Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "KOL";
Текущий архив: 2006.01.22;
Скачать: [xml.tar.bz2];

Вниз

Секция {$I name.inc} в .DPR файле   Найти похожие ветки 

 
mmn   (2005-05-30 11:38) [0]

Такой вот вопрос.
Пишу приложение, которое в случае, если в командной строке указаны параметры, не создает никаких визуальных форм, а просто обрабатывает данные и завершает работу. Реализовал это дело так: в самом .dpr файле перед {$IFDEF KOL_MCK} проверяю на наличие параметров командной строки и если нахожу, то после отработки процедур делаю Exit, чтобы формы не создавались, и программа сразу завершалась.

Проблема в том, что когда в следующий раз открываешь этот проект, то строчка проверки {$IFDEF KOL_MCK} автоматически перемещается в самое начало секции begin (до начала моей проверки на наличие параметров) и, следовательно, после компиляции программа работает не так как задумывалось (формы создаются в любом случае). Приходится каждый раз переносить эту строчку в другое место вручную.

Это так было задумано, или я что-то не понимаю?


 
ECM ©   (2005-05-30 13:11) [1]

>Это так было задумано, или я что-то не понимаю?
... Да - так задумано...для этих целей служит файл ProjectName_1.inc:

{ ИмяПроекта_1.inc
 This file is for you. Place here any code to run it
 just following Applet creation (if it present) but
 before creating other forms. E.g., You can place here
 <IF> statement, which prevents running of application
 in some cases. TIP: always use Applet for such checks
 and make it invisible until final decision if to run
 application or not. }


Читай внимательнее документацию...:)


 
SPeller ©   (2005-05-30 15:10) [2]

Можно делать так:

{ KOL MCK } // Do not remove this line!
{$DEFINE KOL_MCK}

program WndInfo;

uses
KOL,
 Unit1 in "Unit1.pas" {Form1};

//{$R *.res}

begin
 // Делаем всё что нам нужно, формы обрабатываем вручную, копируя текст, сгенерированный МСК.
 {$WARNINGS OFF} // Отключаем ворнинги
end.
// Текст после end с точкой игнорируется, и сгенеренный МСК код не имеет силы.

begin // PROGRAM START HERE -- Please do not remove this comment

{$IFDEF KOL_MCK} {$I WndInfo_0.inc} {$ELSE}

 Application.Initialize;
 Application.CreateForm(TForm1, Form1);
 Application.Run;

{$ENDIF}

end.


 
mmn   (2005-05-30 15:48) [3]

Спасибо за разъяснения.



Страницы: 1 вся ветка

Форум: "KOL";
Текущий архив: 2006.01.22;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.037 c
14-1135856440
Digitman
2005-12-29 14:40
2006.01.22
kXProject - засада ?


6-1128674266
Mr. WAP
2005-10-07 12:37
2006.01.22
*.wml -> в нормальный вид ..


2-1135752119
john_mag
2005-12-28 09:41
2006.01.22
DateFormat


1-1134725456
oleggar
2005-12-16 12:30
2006.01.22
threads


1-1134593370
FunkyByte
2005-12-14 23:49
2006.01.22
Создание ADOQuery в удалённом процессе





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский