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

Вниз

Как узнать путь к shell application?   Найти похожие ветки 

 
Чапаев ©   (2006-09-17 08:50) [0]

Смотрю в реестре ветку HKLM\Software\Microsoft\WindowsNT\CurrentVersion\Winlogon\Shell -- там только explorer.exe. А вот как бы узнать и полный путь?


 
Ketmar ©   (2006-09-17 08:59) [1]

так же, как его узнаёт winlogon, полагаю. лезть сейчас в его исходники лениво, так что предоположу, что обычный поиск по PATH. кто первый -- тот и папа.


 
Чапаев ©   (2006-09-17 09:04) [2]

Так... Вот, помнится, в Паскале была функция, которая по заданному имени файла выводила полный путь к файлу с учётом этого самого PATh"a. Нет ли такой же в Делфи? Я понимаю, что пишется за две минуты. Но... Воскресенье, утро...


 
vidiv ©   (2006-09-17 09:25) [3]


> Чапаев ©   (17.09.06 09:04) [2]

спорим за 2 минуты не напишешь? (чтоб работала правильно)


 
Чапаев ©   (2006-09-17 09:29) [4]

> (чтоб работала правильно)

Ну это вы, барин, придираетесь... :-(


 
vidiv ©   (2006-09-17 10:09) [5]

function FullPath(var FileName:string):boolean;
var i:integer;
   path, mpath:string;
begin
 path := "";
 i := Windows.GetEnvironmentVariable("PATH", nil, 0);
 if i > 0 then
 begin
   SetLength(path, i - 1);
   Windows.GetEnvironmentVariable("PATH", PChar(path), i);
 end;

 Result := false;
 repeat
      i := pos(";", path);
      if (i>1) then begin
          mpath := copy(path, 1, i - 1);
          if not (mpath[length(mpath)] in ["\", "/"]) then
             mpath := mpath + "\";
          if FileExists(mpath + FileName) then begin
               FileName := mpath + FileName;
               result := true;
               exit;
          end;
          delete(path, 1, i);
      end else
     if length(path)>0 then begin
          if not (path[length(path)] in ["\", "/"]) then
             path := path + "\";
          if FileExists(path + FileName) then begin
               FileName := path + FileName;
          end;
          exit;
      end;
 until false;
end;


 
begin...end ©   (2006-09-17 10:27) [6]

> Чапаев ©   (17.09.06 09:04) [2]

SearchPath ?


 
Ketmar ©   (2006-09-17 10:27) [7]

SearchPath().


 
Чапаев ©   (2006-09-17 10:43) [8]

Спасибочки, SearchPath() -- самое оно.



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

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

Наверх




Память: 0.48 MB
Время: 0.088 c
2-1158521523
Aleksandr
2006-09-17 23:32
2006.10.08
Delphi7 и html


2-1159103648
Серый
2006-09-24 17:14
2006.10.08
Текстовые поля


15-1158643332
Ega23
2006-09-19 09:22
2006.10.08
С Днём рождения! 19 сентября


2-1157950790
lobach
2006-09-11 08:59
2006.10.08
List Box


2-1158755581
Dr. Genius
2006-09-20 16:33
2006.10.08
Длина hint’ов