[Delphi] Program Files

[Delphi] Program Files
0

Jak uzyskać programowo ścieżkę dostępu do katalogu „Program Files”
Nie zawsze system jest na c: Chodzi mi o to czy jest coś takiego jak np.” GetSystemDirectory” odnośnie „Program Files” (czyli pliku w którym są instalowane przeważnie programy)

pozdrawiam LIMBA

W0
  • Rejestracja:ponad 22 lata
  • Ostatnio:około 14 lat
  • Postów:384
0

sprawdź katalog Windows i wyciągnij z nazwy 1 literkę ;]
To literka dysku potem tylko +':Program Files'

SE
  • Rejestracja:ponad 22 lata
  • Ostatnio:około 4 lata
  • Postów:1103
0

Poszukaj na forum kiedyś Mirekpil dawał kod który w listboxie wyświetlał wszystkie ważne katalogi systemu(ścieżki do nich). Pamiętam, że to mleczasz się pytał o ścieżkę do pulpitu wtedy... ale nie będę szukał [diabel]


pozdrawiam, Sebek
Pik
  • Rejestracja:ponad 22 lata
  • Ostatnio:ponad 6 lat
0

W rejestrze w
HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersion jest wartość: ProgramFilesDir ona zawiera ścieżkę dostępu do Program Files :-)

Pozdrawiam

SE
  • Rejestracja:ponad 22 lata
  • Ostatnio:około 4 lata
  • Postów:1103
0

Sory, że wczoraj tego nie poszukałem ale nie mogłem, bo musiałem iść spać :) Oto kod, który podał kiedyś mirekpil:

uses ShlObj;

function GetP(Folder: Integer): String;
var FilePath: array[0..MAX_PATH] of char;
begin
SHGetSpecialFolderPath(0, FilePath, Folder , False);
Result:=FilePath;
end;

w Button1Click

ListBox1.Items.Add('AutoStart '+getp(CSIDL_STARTUP));
ListBox1.Items.Add('Dane aplikacji '+getp(CSIDL_APPDATA));
ListBox1.Items.Add('Kosz'+getp(CSIDL_BITBUCKET));
ListBox1.Items.Add('Ikony dla Panelu Sterowania '+getp(CSIDL_CONTROLS));
ListBox1.Items.Add('Cookies (Internet) '+getp(CSIDL_COOKIES));
ListBox1.Items.Add('Wirtualny pulpit '+getp(CSIDL_DESKTOP));
ListBox1.Items.Add('Fizyczny pulpit '+getp(CSIDL_DESKTOPDIRECTORY));
ListBox1.Items.Add('Mój komputer '+getp(CSIDL_DRIVES));
ListBox1.Items.Add('Ulubione '+getp(CSIDL_FAVORITES));
ListBox1.Items.Add('Czcionki '+getp(CSIDL_FONTS));
ListBox1.Items.Add('Historia (Internet) '+getp(CSIDL_HISTORY));
ListBox1.Items.Add('Wirtualny internet '+getp(CSIDL_INTERNET));
ListBox1.Items.Add('Tymczasowy internet '+getp(CSIDL_INTERNET_CACHE));
ListBox1.Items.Add('Otoczenie sieciowe '+getp(CSIDL_NETHOOD));
ListBox1.Items.Add('Dokumenty '+getp(CSIDL_PERSONAL));
ListBox1.Items.Add('Drukarki '+getp(CSIDL_PRINTERS));
ListBox1.Items.Add('Programy Menu Start '+getp(CSIDL_PROGRAMS));
ListBox1.Items.Add('Ostanio używane dokumenty '+getp(CSIDL_RECENT));
ListBox1.Items.Add('Wyślij do... '+getp(CSIDL_SENDTO));
ListBox1.Items.Add('Opcje Menu Start '+getp(CSIDL_STARTMENU));
ListBox1.Items.Add('Wzorce dokumentów '+getp(CSIDL_TEMPLATES));


pozdrawiam, Sebek
0

Dzieki jesteście WIELCY !!!

LIMBA

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.