Форум: "WinAPI";
Текущий архив: 2010.11.28;
Скачать: [xml.tar.bz2];
Внизкак запустить программу через командную строку с параметрами? Найти похожие ветки
← →
vvavva © (2009-05-11 11:08) [0]как запустить программу через командную строку с параметрами?
как программно запустить CONV3DS.EXE с пораметрами и указанным файлом?
чтоб сконвертировал , то что нужно!
желательно код делфи!
у меня есть код но чёт я ни так делаю!? и в итоге ничего не выходит!
//Выполнить команду в командной строке
function ExecAndWait(const ExeName, Params: string; out ExitCode: Cardinal; Timeout: Cardinal = MaxInt): boolean;
var
sui: TStartupInfo;
pi: TProcessInformation;
begin
ZeroMemory(@sui, SizeOf(sui));
sui.cb := SizeOf(sui);
Win32Check(CreateProcess(PChar(ExeName), PChar(Params), nil, nil, False, 0, nil,
nil, sui, pi));
try
CloseHandle(pi.hThread);
Result := WaitForSingleObject(pi.hProcess, Timeout) = WAIT_OBJECT_0;
if Result then
Win32Check(GetExitCodeProcess(pi.hProcess, ExitCode));
finally
CloseHandle(pi.hProcess);
end;
end;
procedure ExecCommandLine(const Cmd: string);
var
Dummy: Cardinal;
begin
ExecAndWait(GetEnvironmentVariable("ComSpec"), "/C " + Cmd, Dummy);
end;
//Пример
procedure TForm1.Button1Click(Sender: TObject);
begin
ExecCommandLine("rd /S /Q "c:\test""); // удаляем папку c:\test со всеми подпапками
end;
я запускаю так
ExecCommandLine(
""E:\Convektor\CONV3DS.EXE" -x aP4.3DS"
);
CONV3DS кажись появляется но конвертации не происходит!
через ПУСК-ВЫПОЛНИТЬ- "E:\Convektor\CONV3DS.EXE" -x aP4.3DS всё ок!
ХЕЛП! ПЛИЗ!
← →
Юрий Зотов © (2009-05-11 11:36) [1]Попробуйте так:
CreateProcess(nil, PChar(CommandLine), ...)
и в CommandLine передавайте полную командную строку:E:\Convektor\CONV3DS.EXE" -x aP4.3DS
← →
Anatoly Podgoretsky © (2009-05-11 15:22) [2]aP4.3DS надо указать полное имя.
← →
vvavva © (2009-05-11 15:58) [3]вот рабочая версия!
ShellExecute(0 //Handle родительского окна, в который будут передаваться сообщения запускаемого приложения.
,PChar("open") //По умолчанию open, если указать nil.
,PChar("E:\Convektor\CONV3DS.EXE") //имя файла или документа, интернет ссылка, e-mail адрес
,PChar("-x aP4.3DS") //параметры, передаваемые приложению в командной строке.
,PChar("E:\Convektor\") //каталог по умолчанию куда бут выложен результат
,SW_SHOWNORMAL //стиль окна
);
пока что всем спасибо !
← →
Anatoly Podgoretsky © (2009-05-11 16:13) [4]Это и есть полное имя E:\Convektor\aP4.3DS, только разбитое на две части.
← →
Anatoly Podgoretsky © (2009-05-11 16:15) [5]Кстати это не одно и тоже, что ExecAndWait - работает по разному.
← →
Юрий Зотов © (2009-05-11 18:43) [6]> vvavva © (11.05.09 15:58) [3]
А ожидание завершения? Или не нужно?
← →
Игорь Шевченко © (2009-05-11 22:14) [7]
> E:\Convektor
слово какое-то знакомое. Был уже на нашей памяти "конвектор форматов" небезызвестный
← →
Германн © (2009-05-12 01:12) [8]
> Игорь Шевченко © (11.05.09 22:14) [7]
Было.
И-нет - "всемирная помойка"!
А где ты думаешь автор "надыбал" сию реализацию функции ExecAndWait?
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2010.11.28;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.004 c