Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Получение параметров [D7, XP]


Ivolg ©   (2007-06-23 19:24:00) 

Здраствуйте ! Столкнулся с одной проблемой. В командной строке набираю c:\php\php.exe c:\test.php, если есть ошибки в синтакисе, то в командной строке они отображаются. Мне нужно передать текст этих ошибок моему приложению и вывевсти к примеру в Memo.


Ivolg   (2007-06-24 22:00:00) [1]

Огромное спасиба, все замечательно работает !!!


Инс   (2007-06-24 21:51:00) [2]

Попробуйте
Result:=CreateProcess(Nil,
     PChar(ExeName+' '+CommadLine),       // command line
     Nil,          // process security attributes
     Nil,          // primary thread security attributes
     TRUE,          // handles are inherited
     CREATE_NO_WINDOW,             // creation flags
     Nil,          // use parent's environment
     Nil,          // use parent's current directory
     siStartInfo,  // STARTUPINFO pointer
     piProcInfo);  // receives PROCESS_INFORMATION
end;


Ivolg   (2007-06-24 21:16:00) [3]

Вместо флага CREATE_NEW_CONSOLE укажите CREATE_NO_WINDOW, но учтите, что на Win9x этот флаг не поддерживается

Извеняюсь, я не указал какой пример я использую. Я использую материал по ссылке http://www.delphikingdom.com/asp/viewitem.asp?catalogid=736
Он наиболее подходит. Как там убрать видимость консоли ?


Инс   (2007-06-24 18:30:00) [4]

Вместо флага CREATE_NEW_CONSOLE укажите CREATE_NO_WINDOW, но учтите, что на Win9x этот флаг не поддерживается


Ivolg   (2007-06-24 18:15:00) [5]

Еще один ньюанс. Как можно не показывать консоль при получении информации ? Я пробую так:

...
function TChildProc.CreateChildProcess(ExeName, CommadLine: String; StdIn,
 StdOut: THandle): Boolean;
...

siStartInfo.wShowWindow := SW_HIDE;

...

Но почему-то это не помогает.


Инс   (2007-06-23 21:15:00) [6]

Загляните сюда:
http://www.delphikingdom.com/asp/viewitem.asp?catalogid=498
http://www.delphikingdom.com/asp/viewitem.asp?catalogid=736


Ivolg   (2007-06-23 21:10:00) [7]

Возникла проблема... При использовании функций WinExec (); и ShellExecute (); добавление в конец строки > C:\temp.txt непомогает ( !


Ivolg   (2007-06-23 20:53:00) [8]

Спасибо за советы !


Инс   (2007-06-23 19:59:00) [9]

Если запускаете из своего приложения, то попробуйте перенаправить консольный вывод, скажем, в тот же канал, мэйлслот или файл.


TUser   (2007-06-23 19:50:00) [10]

Припиши в конце > tmpfile, потом tmpfile читай. Или посмотри в сторону windows pipes.


Наверх

Титульная страница Поиск, карта сайта Написать письмо