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

Вниз

Проблема с каталогами Windows и Winnt   Найти похожие ветки 

 
zolotov   (2003-01-10 23:48) [0]

Как вызывать приложение и под Win98/Me и т.д.,и под WinNT/2000?
Если у нас папка Windows, то это делается так:

procedure TCalcul.btCalcClick(Sender: TObject);
var Windir : String;
WindirP : PChar;
Res:byte;
begin
WinDirP := StrAlloc(MAX_PATH);
Res := GetWindowsDirectory(WinDirP, MAX_PATH);
if Res > 0 then WinDir := StrPas(WinDirP);
WinExec(StrToPchar(WinDir+"\calc.exe "),1);
end;

А вот если Winnt, то приложение не вызывается.
Заранее спасибо.


 
Rouse_ ©   (2003-01-11 00:21) [1]

WinExec(Pchar(WinDir+"\System32\calc.exe"),SW_SHOW);

Желаю успехов


 
zolotov   (2003-01-11 00:52) [2]

Я так понял, это срабатывает только тогда, когда у нас каталог Winnt. А нельзя написать универсально, чтобы приложение вызывалось и из той и из другой папки?


 
Rouse_ ©   (2003-01-11 01:00) [3]

Нет, ты не понял, в НТ калькулятор находится в папке System32 в этом и была твоя ошибка, ты не оттуда его запускал.
Можно сделать вообще одной строкой:
ShellExecute(Handle, "open","Calc", nil, nil, SW_NORMAL);

Желаю успехов


 
zolotov   (2003-01-11 01:05) [4]

Понял, спасибо большое


 
Chlavik ©   (2003-01-11 02:34) [5]

Да и вообще WinExec это уже вчерашний день....



Страницы: 1 вся ветка

Текущий архив: 2003.01.20;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.026 c
4-62941
alvin
2002-12-04 12:23
2003.01.20
Tray


14-62850
Марина
2003-01-03 15:13
2003.01.20
редактор с поддержкой .doc


14-62834
Сергей Лукьяненко
2003-01-01 21:15
2003.01.20
InterBase


1-62488
Igor---
2003-01-10 11:20
2003.01.20
Хм.. что делать с этой ошибкой:


8-62662
DenKop
2002-09-27 10:11
2003.01.20
Wave data chunk