![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
![]() Привет, всем!
Вот нашел у вас на сайте КОД программы. Хотел скомпилировать ее с помощью Free Pascal, но столкнулся с ошибкой: >>ИЗОБРАЖЕНИЕ<< Что это может быть и как исправить? Заранее спасибо!!! Последний раз редактировалось Danik007, 23.01.2010 в 16:17. |
#2
|
||||
|
||||
![]() Нет у меня FreeePascal, но предположу, что:
Данный пример был сделан в Дельфи. Попробуйте убрать директиву: {$APPTYPE CONSOLE} Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#3
|
||||
|
||||
![]() Хотя скорее всего пробема в том, что у вас образовался разрыв в 21 строке.
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#5
|
||||
|
||||
![]() Попробуйте убрать приведение строк к PChar().
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#6
|
||||
|
||||
![]() Вы предлогаете сделать так:
Код:
program BackTime; uses ShellApi,Windows,SysUtils; var Today:TDateTime; bkTime, bkProgram: String; Interval, j: SmallInt; begin Today:=Date; // фиксируем реальную дату if ParamCount<>3 then begin // если параметры не заданы то печатаем подсказку WriteLn(output,'BackTime (c)DSKalugin@rambler.ru'); WriteLn(output,'---------------------'); WriteLn(output,'BackTime.exe T I P'); WriteLn(output,'T - Date;'); WriteLn(output,'I - Interval, [sec];'); WriteLn(output,'P - Program'); WriteLn(output,'---------------------'); WriteLn(output,'Example:'); WriteLn(output,'BackTime.exe 04.01.2000 15 "C:\Program Files\program.exe"'); end else begin // 1й параметр - дата bkTime:=ParamStr(1); // 2й параметр - интервал в секундах Interval:=StrToInt(ParamStr(2)); // 3й параметр - полный путь к программе bkProgram:=ParamStr(3); // установка необходимой даты WinExec('cmd /c date '+bkTime, SW_HIDE); // запуск программы ShellExecute(0, 'open', bkProgram, nil, nil, SW_SHOW); j:=0; while j<Interval do begin // задержка в секундах sleep(1000); inc(j); end; // восстанавливаем реальную дату WinExec('cmd /c date '+DateToStr(Today), SW_HIDE); end end. ![]() Я не понимаю почему она не работает, FreeePascal поддерживает тип PChar от этом свидетельствует СТРАНИЧКА на их сайте. |
#7
|
|||
|
|||
![]() Может и поддержтвает, но не может автоматически конвертировать "короткую" строку в этот тип. Посмотри по справке функцию конвертации...
|
#8
|
||||
|
||||
![]() 2 lmikle
Спасибо за подсказку! Ответ был найден здесь. В начало кода надо было просто добавить {$H+} и он начал компилироваться!!! Теперь есть другой вопрос (дабы не создавать новой темы) как вытащит компилятор и нужные библиотеки из FreeePascal. Последний раз редактировалось Danik007, 23.01.2010 в 21:41. |
#9
|
|||
|
|||
![]() А зачем??? возьми любой компонент с pascal-скриптом.
|
#10
|
||||
|
||||
![]() Просто в своем проекте я использую компилятор (и пока что от DELPHI) и мне не хотелось бы нарушать права, а для этого мне нужен FreeePascal.
Цитата:
Как это понять? Вы имеете ввиду компонент для VCL в DELPHI? Но тогда мне нужен компонент не с Pascal скриптом, а что-то по-мощнее, так как Pascal не работает с библиотеками ShellApi,Windows,SysUtils. ![]() |
#11
|
|||
|
|||
![]() Все работает.
Посмотри FastScript, кстати, его даже устанавливать не надо. А то, чего там не хватает - легко туда добавляется. |
#12
|
||||
|
||||
![]() FastScript - платный, и если честно я даже не знаю как им пользоваться и поможет ли он в решении моих задач. Может вы знаете какую-то бесплатную альтернативу (или где можно взять вылеченный FastScript)
![]() P.S. На форуме есть понятие репутации, но нету "+" с помощью которых ее можно подымать или я что-то проглядел? Последний раз редактировалось Danik007, 24.01.2010 в 12:40. |
#13
|
||||
|
||||
![]() Весы справа у отвечающего видите?
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#14
|
|||
|
|||
![]() Вообще-то, найти исходники при известном упорстве не составляет сложности. Еще неплохой подобный компонент был в пакете RALib.
А вообще, порой на torry.ru - там много чего интересного... |