Добавить комментарий

Delphi

Определить расположение специальной папки Windows.

Создадим функцию для получения пути к специальным папкам в Windows:

uses
     WinAPI.ShlObj
     ;
...
function GetSpecialFolder(Index: integer): string;
var
    PIDL          : PItemIDList;
    SpecialFolder : array[0..MAX_PATH] of char;
begin
  SHGetSpecialFolderLocation(0, Index, PIDL);
  SHGetPathFromIDList(PIDL, SpecialFolder);
  Result := SpecialFolder;
end;

Теперь мы можем получать путь к папке, используя константы:

  // Путь к Applicaton Data текущего пользователя.
  s := GetSpecialFolder(CSIDL_APPDATA);

Полный список CSIDL-ов можно посмотреть в WinAPI.ShlObj. Вот некоторые, для примера:

  CSIDL_DESKTOP                 = $0000;          // 
  CSIDL_PROGRAMS                = $0002;          // Start Menu\Programs
  CSIDL_CONTROLS                = $0003;          // My Computer\Control Panel
  CSIDL_PRINTERS                = $0004;          // My Computer\Printers
  CSIDL_PERSONAL                = $0005;          // My Documents
  CSIDL_FAVORITES               = $0006;          // \Favorites
  CSIDL_STARTUP                 = $0007;          // Start Menu\Programs\Startup
  CSIDL_RECENT                  = $0008;          // \Recent
  CSIDL_SENDTO                  = $0009;          // \SendTo
  CSIDL_BITBUCKET               = $000a;          // \Recycle Bin
  CSIDL_STARTMENU               = $000b;          // \Start Menu
  CSIDL_MYMUSIC                 = $000d;          // "My Music" folder
  CSIDL_MYVIDEO                 = $000e;          // "My Videos" folder
  CSIDL_DESKTOPDIRECTORY        = $0010;          // \Desktop
  CSIDL_DRIVES                  = $0011;          // My Computer
  CSIDL_COMMON_STARTMENU        = $0016;          // All Users\Start Menu
  CSIDL_COMMON_PROGRAMS         = $0017;          // All Users\Start Menu\Programs
  CSIDL_COMMON_STARTUP          = $0018;          // All Users\Startup
  CSIDL_COMMON_DESKTOPDIRECTORY = $0019;          // All Users\Desktop
  CSIDL_APPDATA                 = $001a;          // \Application Data
  CSIDL_PRINTHOOD               = $001b;          // \PrintHood
  CSIDL_ALTSTARTUP              = $001d;          // non localized startup
  CSIDL_COMMON_ALTSTARTUP       = $001e;          // non localized common startup
  CSIDL_COMMON_FAVORITES        = $001f;
  CSIDL_INTERNET_CACHE          = $0020;
  CSIDL_COOKIES                 = $0021;
  CSIDL_COMMON_APPDATA          = $0023;          // All Users\Application Data
  CSIDL_PROGRAM_FILES           = $0026;          // C:\Program Files
  CSIDL_MYPICTURES              = $0027;          // C:\Program Files\My Pictures
  CSIDL_PROFILE                 = $0028;          // USERPROFILE
  CSIDL_PROGRAM_FILES_COMMON    = $002b;          // C:\Program Files\Common
  CSIDL_COMMON_TEMPLATES        = $002d;          // All Users\Templates
  CSIDL_COMMON_DOCUMENTS        = $002e;          // All Users\Documents
  CSIDL_ADMINTOOLS              = $0030;          // \Start Menu\Programs\Administrative Tools
  CSIDL_COMMON_MUSIC            = $0035;          // All Users\My Music
  CSIDL_COMMON_PICTURES         = $0036;          // All Users\My Pictures
  CSIDL_COMMON_VIDEO            = $0037;          // All Users\My Video
Метки:

Filtered HTML

  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Допустимые HTML-теги: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Строки и абзацы переносятся автоматически.
  • Вы можете цитировать другие сообщения, используя тэг [quote]

Plain text

  • HTML-теги не обрабатываются и показываются как обычный текст
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Строки и абзацы переносятся автоматически.