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

Вниз

Путь до папки windows   Найти похожие ветки 

 
mao ©   (2003-08-01 07:05) [0]

Подскажите, как получить путь до папки windows. Попытался использовать GetWindowsDirectory, что-то не получается (не могу нормально вызвать). :о(


 
andrey_pst ©   (2003-08-01 07:18) [1]

http://www.sources.ru/delphi_system.shtml#2


 
Vlad25   (2003-08-11 20:10) [2]

>Подскажите, как получить путь до папки windows. Попытался >использовать GetWindowsDirectory, что-то не получается (не могу >нормально вызвать). :о(

GetWindowsDirectory вполне можно использовать. Единственная сложность заключается в преобразовании типа String в PChar, который используется API Win32.

unit Dir;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
lb: TLabel;
procedure RealizeLength(var S: String);
procedure Button1Click(Sender: TObject);

private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
S: String;
begin
SetLength(S,256);
GetWindowsDirectory(Pchar(S),256);
RealizeLength(S);
lb.Caption := S;
end;

procedure TForm1.RealizeLength(var S: String);
begin
SetLength(S, StrLen(PChar(S)));
end;

end.


 
clickmaker ©   (2003-08-11 20:18) [3]

Можно проще

var
Buffer: array[0..1023] of Char;

SetString(Result, Buffer, GetWindowsDirectory(Buffer, SizeOf(Buffer)));


 
Anatoly Podgoretsky ©   (2003-08-11 20:39) [4]

Еще проще
SetLength(S,MAX_PATH);
GetWindowsDirectory(S,MAX_PATH);
S := PChar(S);


 
TheOldMen   (2003-08-13 16:05) [5]

Для этого можно воспользоваться API функцией GetWindowsDirectory.

Для системной директории используется API функция GetSystemDirectory().

Пример:

{$IFNDEF WIN32}
const MAX_PATH = 144;
{$ENDIF}

procedure TForm1.Button1Click(Sender: TObject);
var
a : Array[0..MAX_PATH] of char;
begin
GetWindowsDirectory(a, sizeof(a));
ShowMessage(StrPas(a));
GetSystemDirectory(a, sizeof(a));
ShowMessage(StrPas(a));
end;



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

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

Наверх




Память: 0.48 MB
Время: 0.029 c
1-89232
Alex_x
2003-10-15 10:14
2003.10.27
Как правильно виходить из приложения?


8-89394
prorok
2003-06-27 22:28
2003.10.27
Проблема с анимированным gif


7-89607
Alexander
2003-08-13 09:52
2003.10.27
Как можно подключить сетевой диск на свой компьютер, если нет


14-89503
ZeroDivide
2003-10-10 10:43
2003.10.27
Новый альбом MUSE - Absolution. Кто слушает? Какие впечатления?


4-89642
Snap
2003-08-19 13:19
2003.10.27
API(HDC, HBitmap)= картинка на экране - KAK?