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

Вниз

ошибка при выполнении командного файла из приложения   Найти похожие ветки 

 
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;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.06 c
2-1142192465
Ilg
2006-03-12 22:41
2006.03.26
Список файлов в ComboBox


8-1129748044
Alexandr Rivvin
2005-10-19 22:54
2006.03.26
Проигрывание MP3


2-1142343735
ЧиЧиЧи
2006-03-14 16:42
2006.03.26
Запихнуть что-нить в ехе


3-1138788233
AlAnNik
2006-02-01 13:03
2006.03.26
Проблема с MSDE


15-1141204071
Kerk
2006-03-01 12:07
2006.03.26
Ask Yahoo