Форум: "Основная";
Текущий архив: 2004.10.17;
Скачать: [xml.tar.bz2];
ВнизКонсольное приложение и Чудеса в решете Найти похожие ветки
← →
Ваня Жуков (2004-10-01 11:36) [0]Вступление.
С помощью File->New->Console Application cоздаем скелет консольного приложения.
Добавляем код, компилируем, получаем готовое приложение.
Для удобства в нем есть модуль данных, так как приложение работает с БД.
Все работает как надо и работа разработчика в основном идет над оптимизацией алгоритма обработки данных.
На определенном этапе в дополнение к ведению текстового лога в код добавляется вывод на консоль с помощью Witeln.
И снова все работает как надо.
Но после очередной сборки проекта вдруг откуда ни возьмись получается приложение, про которое Windows думает что оно не консольное.
Соответственно при запуске с ним не связывается stdout и операция Writeln вываливается в недопустимую операцию.
Если посмотреть в свойства ярлыка на такой билд, то там присутствуют все вкладки свойств характерные для gui прилождения, и ни одной для консольных.
Еще после нескольких билдов все чудесным образом возвращается на круги своя и винда признает в приложении консольную программу.
И так несколько раз подряд.
Список uses не меняется, директива {$APPTYPE CONSOLE} никуда не девается и даже продублирована с горя во всех модулях.
GetStdHahdle(STD_OUTPUT_HANDLE) всегда <> INVALID_HANDLE_VALUE
AllocConsole конечно решает проблему, но хочется при запуске из под фара использовать его консоль для вывода.
Если кто сталкивался и борол или просто знает в чем дело просьба ткнуть куда надо.
← →
PVOzerski © (2004-10-01 11:44) [1]Странная штука... {$apptype console} должно работать однозначно.
А точно нигде не стоит {apptype GUI} и не попало ли {$apptype console} в невыполняемый {$ifdef}? Можно, конечно, пересобрать всё из командной строки с параметром -СС . Но все равно, странно.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.10.17;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.034 c