Советы по Delphi

         

Регистры - доступ и использование вместо WIN.INI


    uses
Registry, Windows;
var
TheReg: TRegistry; KeyName: String; ValueStr: String;
begin
TheReg := TRegistry.Create; try

TheReg.RootKey := HKEY_CURRENT_USER; KeyName := 'Software\MyTinyApp\StartUp'; if TheReg.OpenKey(KeyName, False) then begin ValueStr := TheReg.ReadString('WorkPath'); TheReg.CloseKey; end; finally TheReg.Free; end; end;

Также имейте в виду, что корректное место для сохранения пути к вашему приложению (EXE-файлу) в регистрах Win95 находится по адресу:

    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\AppPaths\MYAPP.EXE

Сохраните полный путь к вашему приложению как значение по умолчанию в этом ключе.

Regstr.pas определяет константу для этого пути (...\App Paths\) как REGSTR_PATH_APPPATHS.

Сохранение полного пути к вашему приложению (EXE-файлу) позволит пользователю запустить его, просто набрав MYAPP (зарегистрированное имя) в стартовом меню Start|Run. Вот пример, регистрирующий путь к вашему приложению:

    uses
Registry, Regstr;
var
TheReg: TRegistry; KeyName: String;
begin
TheReg := TRegistry.Create; try {Проверяем установку AppPath и при необходимости корректируем} TheReg.RootKey := HKEY_LOCAL_MACHINE; KeyName := REGSTR_PATH_APPPATHS + ExtractFileName(Application.ExeName); if TheReg.OpenKey(KeyName, True) then begin if CompareText(TheReg.ReadString(''), Application.ExeName) <> 0 then TheReg.WriteString('', Application.ExeName); TheReg.CloseKey; end; finally TheReg.Free; end; end;

[000220]



Содержание раздела