Форум: "Начинающим";
Текущий архив: 2013.05.12;
Скачать: [xml.tar.bz2];
Вниззапуск DOS приложения Найти похожие ветки
← →
toropoff (2012-10-23 21:45) [0]никогда бы не подумал что тормознусь на столь тривиальной задаче запустить дос приложение и дождаться его завершения.
с десяток кодов перепробывал. вот последний:
Procedure RunRAR(param: String);
var
StartInfo: TStartUpInfo;
ProcInfo: TProcessInformation;
createOK: Boolean;
sMyRAR: string;
begin
FillChar(StartInfo, SizeOf(TStartUpInfo), #0); FillChar(ProcInfo, SizeOf(TProcessInformation), #0);
StartInfo.cb := SizeOf(TStartUpInfo);
StartInfo.dwFlags := STARTF_USESHOWWINDOW;
StartInfo.wShowWindow := SW_SHOW;
sMyRAR := "c:\Program Files\WinRAR\rar.exe";
createOK := CreateProcess(PChar(sMyRAR), PChar(sMyRAR+" "+param), Nil, Nil, false, CREATE_NEW_PROCESS_GROUP+HIGH_PRIORITY_CLASS, NIL, NIL, STARTINFO, PROCINFO);
if createOK then waitForSingleObject(PROCINFO.HPROCESS, Infinite) else ShowMessage("error");
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
runrar("a -m0 -rr c:\test.rar c:\testDir");
end;
не создается процесс и всё..
Delphi2007
← →
toropoff (2012-10-23 21:54) [1]ShellExecute(0,"open", Pchar("c:\Program Files\WinRAR\rar.exe"), Pchar("a -m0 -rr c:\test.rar c:\testDir"), nil ,SW_SHOWNORMAL);
так же не катит..
← →
kilkennycat © (2012-10-23 21:54) [2]после CreateProcess вызвать GetLastError
← →
toropoff (2012-10-23 22:01) [3]ок щас попробую..
как ни странно на DelphiXE3 код отработал:
ShellExecute(0,"open", Pchar("c:\Program Files\WinRAR\rar.exe"), Pchar("a -m0 -rr c:\test.rar c:\testDir"), nil ,SW_SHOWNORMAL);
заменил на PAnsiChar в 2007 - один фиг нифига не пашет..
интересно даже стало.. буду копать..
← →
toropoff (2012-10-23 22:12) [4]ShellExecute возвращает - 5, CreateProcess - 50
← →
toropoff (2012-10-23 22:19) [5]администрация, удалите пожалуйста эту тему, проблема оказалась в 2007 дельфи..
хоть и запускаю от админа но доступ почему-то не имеет..
← →
kilkennycat © (2012-10-23 23:16) [6]5 - понятно. 50 - странно...
← →
Anatoly Podgoretsky © (2012-10-24 07:16) [7]WinRAR это не ДОС приложение, смотрю даже слово Win в название не смущает.
← →
Inovet © (2012-10-24 08:17) [8]> [7] Anatoly Podgoretsky © (24.10.12 07:16)
Автору пофиг, лишь бы окошко чёрное с курсором было.
← →
kilkennycat © (2012-10-24 09:11) [9]эт вы зря. rar.exe - консольное приложение
← →
Palladin © (2012-10-24 09:11) [10]rar консольная утилита
← →
Inovet © (2012-10-24 09:23) [11]> [9] kilkennycat © (24.10.12 09:11)
> rar.exe - консольное приложение
консольная - ключевое слово.
← →
kilkennycat © (2012-10-24 11:06) [12]честно признаюсь, что до сего момента не особо делал разницу между консольным и дос....
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2013.05.12;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.002 c