Форум: "Начинающим";
Текущий архив: 2006.02.12;
Скачать: [xml.tar.bz2];
ВнизЗапуск приложений Найти похожие ветки
← →
luser (2006-01-24 12:05) [0]Доброго времени суток. Как мне запустить программу из %systemroot% как можно проще.
← →
Digitman © (2006-01-24 13:08) [1]Приведи уже знакомые тебе способы запуска программы, которые кажутся излишне сложными ..
← →
Ega23 © (2006-01-24 13:14) [2]winExec
ShellExecute
CreateProcess
Последнее - предпочтительнее
← →
kukuikar © (2006-01-24 13:54) [3]
> CreateProcess
>
> Последнее - предпочтительнее
А не делает ли
> ShellExecute
то же самое только более простым путем.
Может для автора этого вопроса более предпочтительнее как раз ShellExecute или даже winExec
← →
luser (2006-01-24 14:18) [4]Когда пишу Winexec("%systemroot%\notepad.exe",1) Ничего не происходит. А GetwindowsDir выдает мне системную папку но добавить к ней путь исполняемого файла мне что-то не удается.
← →
kukuikar © (2006-01-24 14:36) [5]ShellExecute(
handle,//hande
"open",//команда открыть
"notepad.exe",//запускаемый файл
nil,параметры запуска файла
"%SYSTEMROOT%",папка откуда запускать, может быть nil, если в файле есть путь
SW_SHOWNORMAL
);.
Назабудь добавить в uses юнит ShellApi.
← →
DiamondShark © (2006-01-24 14:37) [6]
> А GetwindowsDir выдает мне системную папку но добавить к
> ней путь исполняемого файла мне что-то не удается.
Да, путь и имя файла -- это такие заколдованные строки, которые в принципе нельзя соединить. ;)
Код и результат исполнения где?
На "что-то не удаётся" можно ответить только "значит что-то неправильно".
← →
kukuikar © (2006-01-24 14:39) [7]
> kukuikar © (24.01.06 14:36) [5]
неправильно.
Путь к папке Windows ищи через GetWindowsDirectory.
%SYSTEMROOT% не будет работать!
← →
kukuikar © (2006-01-24 14:43) [8]например так:
var
WinDir: array [ 0..255 ] of Сhar;
path: String;
begin
GetWindowsDirectory(WinDir,255);
path := StrPas(WinDir);
...
end;
← →
DiamondShark © (2006-01-24 14:44) [9]procedure TForm1.Button1Click(Sender: TObject);
var
Dir: packed array[byte] of char;
begin
Win32Check( GetWindowsDirectory(Dir, SizeOf(Dir)) > 0);
WinExec(PChar(Dir+"\notepad.exe"), SW_SHOWNORMAL);
end;
странно... работает.
может, просто нотепада в папке нет?
;)
← →
Leonid Troyanovsky © (2006-01-24 14:50) [10]
> kukuikar © (24.01.06 14:36) [5]
> ShellExecute(
ShellExecuteEx with SEE_MASK_DOENVSUBST
--
Regards, LVT.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.02.12;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.034 c