Главная страница
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.074 c
2-1158765927
Makcim
2006-09-20 19:25
2006.10.08
ListBox


3-1155098797
al_tor
2006-08-09 08:46
2006.10.08
Ошибка при вызове ADOQuery


15-1158504021
Nic
2006-09-17 18:40
2006.10.08
Кросс наций


2-1158106874
Not
2006-09-13 04:21
2006.10.08
Подскажите пример исходника программы работающей с dll ?


2-1158737384
kyn66
2006-09-20 11:29
2006.10.08
Глюк с SetRange?