Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.11.28;
Скачать: CL | DM;

Вниз

FileExecuteWait   Найти похожие ветки 

 
бобёр   (2002-11-18 18:14) [0]

Кто нибудь может объяснить в чём различие между двумя следующими вариантами использования FileExecuteWait:

1) FileexecuteWait("pgp.exe","-kv > D:\key.txt","",sw_Hide);

2) FileexecuteWait("D:\test.bat","","",sw_Hide);

Содержимое test.bat
pgp.exe -kv > D:\key.txt

2-й вариант работает, а первый нет. В чём может быть ошибка?


 
Marcus   (2002-11-18 18:20) [1]

Спроси GetLastError. Или попробуй так:
FileexecuteWait("","pgp.exe -kv > D:\key.txt","",sw_Hide);


 
бобёр   (2002-11-18 18:51) [2]

После вызова функции
GetLastError=6
Внутри ExitCode=15
FileexecuteWait("","pgp.exe -kv > D:\key.txt","",sw_Hide);
не помогает. ExitCode при таком варианте = 1242792

При отработке через батник ExitCode=0



 
Андрей Прокофьев ©   (2002-11-18 18:53) [3]


FileexecuteWait("С:\COMMAND.COM","/C pgp.exe -kv > D:\key.txt","",sw_Hide);


 
Song ©   (2002-11-18 18:54) [4]

Надо смотреть FileExecuteWait()


 
Marcus   (2002-11-18 19:09) [5]

Сделай проще:

function CreateProcessAndWait(AppName: PChar; const CmdLine: string; WorkDir: PChar): boolean;
var
si: STARTUPINFO;
pi: PROCESS_INFORMATION;
begin
ZeroMemory(@si, SizeOf(si));
si.cb := SizeOf(si);
si.dwFlags := STARTF_USESHOWWINDOW;
si.wShowWindow := SW_HIDE;
Result := CreateProcess(nil, PChar(Format(""%s" "%s"", [AppName, CmdLine])), nil, nil, FALSE,
NORMAL_PRIORITY_CLASS, nil, WorkDir, si, pi);
if Result then begin

WaitForSingleObject(pi.hProcess, INFINITE);
end;
CloseHandle(pi.hProcess);
end;


 
Anatoly Podgoretsky ©   (2002-11-18 19:14) [6]

Перенаправление занимается командный процессор


 
бобёр   (2002-11-18 19:17) [7]

FileexecuteWait("С:\COMMAND.COM","/C pgp.exe -kv > D:\key.txt","",sw_Hide);
Так работает.

Как вместо С:\COMMAND.COM поставить тот путь что прописан в PATH, и в котрых ищет винда файлы по Path. (Хотелось бы чтобы прога была переносная и не зависела от местоположения COMMAND.COM)



 
Marcus   (2002-11-18 19:19) [8]

А если ты напишешь просто "COMMAND.COM", она и будет искать сначала в текущем каталоге, а если обломается, то полезет в PATH...


 
Anatoly Podgoretsky ©   (2002-11-18 19:20) [9]

Путь до "С:\COMMAND.COM" автоматически прописан в системе, зато самого "С:\COMMAND.COM" может не быть.


 
Андрей Прокофьев ©   (2002-11-18 19:21) [10]

а если CMD.EXE



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

Текущий архив: 2002.11.28;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.019 c
1-93144
Анастасия
2002-11-17 11:12
2002.11.28
Синхронизация работы 2-x Memo


14-93248
Карлсон
2002-11-10 13:21
2002.11.28
хто цэ таке.


1-93053
BOBAH
2002-11-19 14:31
2002.11.28
Можно-ли задать маску для линии?


14-93236
Ajax
2002-11-10 12:06
2002.11.28
Программы распознавания текста по голосу...


14-93250
vidiv
2002-11-11 12:00
2002.11.28
Мессаг