Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > Приложение, работающее в консольном и GUI режиме


Автор: dumb 6.5.2008, 03:04
цель:
создание приложения, которое будучи запущенным с параметрами в командной строке, отрабатывает в консольном окне, а без параметров - открывает всякие формы.

решение:
создаем новый(или берем старый) Application, сохраняем, закрываем проект, в bpr-файле меняем:
Код
<LFLAGS value="... -aa -Tpe ..."/>
...
<ALLOBJ value="c0w32.obj sysinit.obj $(OBJFILES)"/>

на
Код
<LFLAGS value="... -ap -Tpe ..."/>
...
<ALLOBJ value="c0x32.obj sysinit.obj $(OBJFILES)"/>


в файле, содержащем WinMain(по умолчанию это Project1.cpp) заменяем это:
Код
#include <vcl.h>
#pragma hdrstop
//---------------------------------------------------------------------------
USEFORM("Unit1.cpp", Form1);
//---------------------------------------------------------------------------
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
  try
  {
     Application->Initialize();
...

на это:
Код
#include <vcl.h>
#pragma hdrstop
#include <stdio.h>
//---------------------------------------------------------------------------
USEFORM("Unit1.cpp", Form1);
//---------------------------------------------------------------------------
#pragma argsused
int main(int argc, char* argv[])
{
  if (argc > 1)
  {
    printf("hello world! arg: %s\n", argv[1]);
  }
  else
  {
    FreeConsole();
    try
    {
      Application->Initialize();
... 


все. smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)