Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Вопрос про shellexecute [D5, Win95/98, WinME]


dimich ©   (2002-06-11 11:27:00) 

Мастера как можно реализовать запуск той или иной программы, я понимаю что это надо делать через shellexecute, но вопрос вот в чем некоторые программы необходимо запускать именно из каталога, где находится сам екзешник программы.
и если я пишу такую вещь:
shellexecute(handle,"open",apchar,nil,nil,sw_restore);
то некоторые проги жалуются что не находят файлы (да это и понятно)и немогут запустится.
Как с этим бороться подскажите....плиз.
Заранее благодарен.


Sasha9   (2002-06-13 14:58:00) [1]

VID ©
не обязательно, нужно просто вместо второго nil указать путь


dimich   (2002-06-13 12:00:00) [2]

Согласен, а еще есть chDir(куда идти). Спасибо всем за помощь, сам справился:)))


VID   (2002-06-11 15:02:00) [3]

Попробуй перед вызовом ShellExecute написать
SetCurrentDir(ExtractFilePath(apchar));


dimich   (2002-06-11 11:45:00) [4]

>>UserL
Так я в переменную apchar и кладу полный путь.
Подробнее у меня код выглядит так:
procedure TForm1.TreeView1DblClick(Sender: TObject);
var
apchar:array[0..254] of char;
begin
table1.locate("kod_s",treeview1.selected.parent.index+1,[loCaseInsensitive]);
table2.locate("game",treeview1.selected.Text ,[loCaseInsensitive]);
strpcopy(apchar,table2.fields[4].asstring);
shellexecute(handle,"open",apchar,nil,nil,sw_restore);
form1.FormStyle:=fsnormal;
end;


UserL   (2002-06-11 11:35:00) [5]

Попробуй передать полный путь к запускаемой проге.
Должно сработать


Наверх

Титульная страница Поиск, карта сайта Написать письмо