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

Вниз

SearchPath по разному работает в зависимости от способа старта.   Найти похожие ветки 

 
Alex_Petr ©   (2005-02-02 05:42) [0]

Здравствуйте.
Интересная вещь:
Если стартовать из реестра ( MACHINE\….\Run ), то SearchPath находит
файл (\WINDOWS\system32\ntdll.dll ), а, если сам запускаешь программу то - нет.
Проверяю так:
procedure TMainForm.mnuFirstTestClick(Sender: TObject);
var
 FName:string;
 FilePart:PChar;
 FullName:array [0..MAX_PATH] of Char;
begin
 FilePart:="";
// GetCurrentDirectory - при старте из реестра:
//C:\Documents and Settings\Administrator\My Documents  
 FName:="\WINDOWS\system32\ntdll.dll";
 if SearchPath(nil,PChar(FName),nil,SizeOf(FullName),FullName,FilePart)=0
  then ShowMessage(FName) else ShowMessage(FullName);
end;

Подскажите, пожалуйста, почему так происходит и как можно это избежать ?
Проверял под Win XP.


 
Alex_Petr ©   (2005-02-03 11:29) [1]

И, всетаки, мне очень интересно: в чем разница, стартую я из реестра или DblClick-ом из Explorer-а ?


 
Jay1982 ©   (2005-02-03 11:52) [2]

FName:="\WINDOWS\system32\ntdll.dll";
Может не на том диске ищешь


 
Romkin ©   (2005-02-03 11:53) [3]

Разница - в правах доступа :) Из реестра, HKLM, оно запускается с правами системы. А из эксплорера - с твоими :)))


 
Alex_Petr ©   (2005-02-03 12:11) [4]

>Jay1982
Ты прав: SetCurrentDirectory(GetWindowsDirectory) - помогает
>Romkin ©   (03.02.05 11:53) [3]
Попробую сравнить права



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

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

Наверх




Память: 0.47 MB
Время: 0.051 c
3-1106127142
Shizuku
2005-01-19 12:32
2005.02.20
Перенос наработок из VBA в Delphi


1-1107434406
Dmitry_04
2005-02-03 15:40
2005.02.20
Как можно уменьшить мерцание формы при переносе?


9-1097681121
Colt1978
2004-10-13 19:25
2005.02.20
Кто и как пакует ресурсы ?


1-1107769900
Guest1
2005-02-07 12:51
2005.02.20
Cannot load package ibxpress70


8-1098822398
Destroyer
2004-10-27 00:26
2005.02.20
Как вызвать стандартное Windows-кое окно, для изменения яркости..