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

Вниз

Избранное в Windows   Найти похожие ветки 

 
Schummi   (2001-09-15 07:45) [0]

Здравствуйте мастера! Ответьте пожалуйста на такой вопрос - Как узнать, где у юзера на компе заинсталина Винда и её язык(русская или английская), а точнее как узнать, где находится папка "Избранное"? Заранее благодарен!


 
Ajax   (2001-09-15 22:30) [1]

Все системные папки.

procedure TForm1.FormCreate(Sender: TObject);
var
reg : TRegistry;
ts : TStrings;
i : integer;
begin
reg := TRegistry.Create;
reg.RootKey := HKEY_CURRENT_USER;
reg.LazyWrite := false;
reg.OpenKey("Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders",false);
ts := TStringList.Create;
reg.GetValueNames(ts);
for i := 0 to ts.Count -1 do begin
Memo1.Lines.Add(ts.Strings[i] +" = " +reg.ReadString(ts.Strings[i]));
end;
ts.Free;
reg.CloseKey;
reg.free;
end;


 
Schummi   (2001-09-16 07:22) [2]

Спасибо, Ajax!


 
Борисов Александр   (2001-09-17 01:32) [3]

В книжке"Delphi 3.0 Для всех" (Федоров А.Г., изд."КомпьютерПресс", 1998г.), в разделе "Как сделать инсталятор" я нашел следующий код:
var
SPath : Array[0..MAX_Path-1] of Char;
Path : String;
..............
begin
//Подготовительная работа: находим каталог, в котором расположена
//Windows, и формируем маршрут к каталогу WINDOWS/DESKTOP, где
//храняться ярлыки, отображаемые в рабочей области

GetWindowsDirectory(sPath, MAX_PATH);
Path := StrPas(sPath);
Path := Path + "\DESKTOP\";
.............

Вот такой код.


 
Schummi   (2001-09-22 07:42) [4]

Спасибо и тебе, Борисов Александр!


 
[N\A]   (2001-09-22 14:50) [5]

и еще кое что по теме...только с использованием api...
function GetWinDir: string;
var
Buf: array[0..MAX_PATH] of Char;
begin
GetWindowsDirectory(@Buf[0], MAX_PATH+1);
Result := PChar(@Buf[0]);
if Result <> "" then
if Result[Length(Result)] <> "\" then
Result := Result + "\";
end;

function GetSysDir: string;
var
Buf: array[0..MAX_PATH] of Char;
begin
GetSystemDirectory(@Buf[0], MAX_PATH+1);
Result := PChar(@Buf[0]);
if Result <> "" then
if Result[Length(Result)] <> "\" then
Result := Result + "\";
end;

function GetTempDir : string;
var
Buf: array[0..MAX_PATH] of Char;
begin
Windows.GetTempPath(MAX_PATH+1,@Buf[0]);
Result := PChar(@Buf[0]);
if Result <> "" then
if Result[Length(Result)] <> "\" then
Result := Result + "\";
end;

function ReadRegStr(RootKey:HKey; SubKey, Value:String):String;
var
C: Array [0..254] of Char;
T,S: DWORD;
K: HKEY;
begin
Result := "";
T:=REG_SZ;
S:=SizeOf(c);
if RegOpenKeyEx(RootKey,PChar(SubKey),0,KEY_READ,K)=ERROR_SUCCESS then
if RegQueryValueEx(K, PChar(Value),nil,@T,@C,@S)=ERROR_SUCCESS then
Result := C;
RegCloseKey(K);
end;

function GetShellFolderPath(const Name:String):String;
var
S:string;
begin
S:=ReadRegStr(HKEY_CURRENT_USER,"Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders",Name);
Result:=s+"\";
end;

Desktop - Рабочий стол
Favorites - избранное

if GetShellFolderPath("Favorites")<>"\" then
s:= GetShellFolderPath("Favorites");



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

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

Наверх




Память: 0.48 MB
Время: 0.018 c
1-22161
Егор Булычев
2001-12-19 22:13
2002.01.08
Memo хелп!


1-22162
BFG
2001-12-19 20:41
2002.01.08
AVI


1-22206
T2
2001-12-16 07:11
2002.01.08
Align field


4-22470
Шевченко Сергей
2001-11-02 13:32
2002.01.08
Внедрение


14-22333
Nikolay
2001-11-03 20:12
2002.01.08
$$$$$$$$$$$$$$$$$$$$$$$$$$