Форум: "Начинающим";
Текущий архив: 2006.03.26;
Скачать: [xml.tar.bz2];
Внизошибка при выполнении командного файла из приложения Найти похожие ветки
← →
stud © (2006-03-10 11:18) [0]приложение запускает командный файл с параметрами,
в режиме отладки из среды дельфи, все выполняется замечательно
если запустить скомпилированное приложение - при выполнении командного файла возникают ошибки - файл такой-то не найден.
но если остановить выполнение программы, взять сформированую строку параметров и запустить командный файл с ними, все тоже нормально работает.
с чем может быть связано подобное поведение??
← →
alex_*** © (2006-03-10 11:20) [1]с тем что файл не найден. Сам же сказал. Посмотри куда указывает CurrentDir и где лежит файл
← →
stud © (2006-03-10 11:26) [2]
> но если остановить выполнение программы, взять
> сформированую строку параметров и запустить командный
> файл с ними, все тоже нормально работает
разница только в том, что в режиме отладки все работает - при самостоятельном запуске приложения нет. в остальном все один в один
← →
Desdechado © (2006-03-10 11:33) [3]повторить еще раз?
в режиме отладки ДРУГОЙ currendir, а ты об этом не догадываешься
при запуске командного файла используй ПОЛНЫЙ путь к нему и в параметрах
← →
stud © (2006-03-10 11:47) [4]
> при запуске командного файла используй ПОЛНЫЙ путь к
> нему и в параметрах
при запуске командного файла используется ПОЛНЫЙ ПУТЬ К НЕМУ, В ПАРАМЕТРАХ УКАЗАН ПОНЫЙ ПУТЬ К НУЖНЫМ ФАЙЛАМ, указывается рабочий каталог для командного файла. везде указаны ПОЛНЫЕ ПУТИ!!
← →
Сергей М. © (2006-03-10 11:53) [5]
> stud © (10.03.06 11:47) [4]
> при запуске командного файла
Показывай как запускаешь ..
← →
Чапаев © (2006-03-10 11:59) [6]
> приложение запускает командный файл с параметрами
Чтобы запустить командный файл, нужно запустить командный интерпретатор и передать ему командный файл в качестве параметра (почти с) кот Матроскин
← →
stud © (2006-03-10 12:07) [7]procedure TForm1.sing(comand: string; exename, workdir : string; var ecode: cardinal);
var
runinfo : TShellExecuteInfo;
runhandle, runerror : Thandle;
begin
// процедура шифрования
zeromemory(@runinfo,sizeof(runinfo));
runinfo.cbSize:=sizeof(runinfo);
runinfo.hInstApp:=runerror;
runinfo.Wnd:=0;
runinfo.fMask:=SEE_MASK_NOCLOSEPROCESS;
runinfo.lpVerb:="open";
runinfo.nShow:=sw_show;
runinfo.lpFile:=pchar(exename);
runinfo.lpParameters:=pchar(comand);
runinfo.lpDirectory:=pchar(workdir);
runinfo.hProcess:=runhandle;
if shellexecuteex(@runinfo)=true then
begin
WaitForSingleObject(runinfo.hProcess, INFINITE);
GetExitCodeProcess(runinfo.hProcess,ecode);
end;
CloseHandle(runinfo.hProcess);
end;
причем ситуация тупейшая((( как говорится вчера все работало
← →
Сергей М. © (2006-03-10 12:16) [8]Ну и где тут вызов GetLastError() ?
> ситуация тупейшая
> runinfo.hProcess:=runhandle <-- Это чего такое ?
Действительно "тупейшая" .. Хоть и не влияет никак на сабж ..
← →
Сергей М. © (2006-03-10 12:19) [9]
> runinfo.hInstApp:=runerror
А это чего такое ?
← →
Плохиш © (2006-03-10 12:34) [10]А я бы ещё хотел увидеть содержание переменных comand, exename, workdir
← →
stud © (2006-03-10 12:41) [11]command="C:\TEMP\tmp\Q3A0G40n.r0u C:\RKC\OTCHET\TK48 C:\TEMP\tmp\Q3A0G40n.cry Q3A0G40n.r0u"
exename=extractfiledir(application.ExeName)+"\sign.cmd"
workdir=extractfiledir(application.ExeName)
← →
stud © (2006-03-10 13:35) [12]в общем бред полный, как появился этот геморой, так и пропал.....
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.03.26;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.04 c