![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Ошибка при работе с GetWindowsDirectory [D5]
antonioxxx © (2002-09-22 22:40:00)Уважаемые программисты! У меня возникает ошибка, когда я пытаюсь вызвать функцию GetWindowsDirectory в OnCreate для формы. Та же ошибка возникает и при попытке вызова этой функции в OnActivate и OnShow. Функция же GetWindowsDirectoryW никаких ошибок не создает, однако её результат я не могу перевести в строковые данные (Передаваемый параметр типа PWideChar). Подскажите, пожалуйста, как мне с этим справиться!
antonioxxx (2002-09-24 21:00:00) [1]Спасибо вам всем за оказанную помощь!
@lexey (2002-09-23 22:31:00) [2]Так же как и у Vladislav, но проще! :о)
procedure TFrm.FormCreate(Sender: TObject);
var
buffer: array [0..255] of char;
begin
GetWindowsDirectory(buffer, SizeOf(buffer));
Label2.Caption := buffer;
end;
Удачи antonioxxx!!!
Vladislav (2002-09-23 10:37:00) [3]
var SP: array[0..MAX_PATH-1] of char;
SysPath, WinPath: TFileName;
begin
SetString( SysPath, SP, GetSystemDirectory( SP, MAX_PATH ));
SetString( WinPath, SP, GetWindowsDirectory( SP, MAX_PATH ));
end;
Song (2002-09-23 08:27:00) [4]2Separator © (23.09.02 07:05)
Пушкин А.С. видимо знает...
gek (2002-09-23 07:41:00) [5]function GetWindowsDir: string;
{$IFDEF WIN32}
var
Buffer: array[0..1023] of Char;
begin
SetString(Result, Buffer, GetWindowsDirectory(Buffer, SizeOf(Buffer)));
{$ELSE}
begin
Result[0] := Char(GetWindowsDirectory(@Result[1], 254));
{$ENDIF}
end;
Separator (2002-09-23 07:05:00) [6]
var
pRes: pChar;
WinDir: string;
begin
PRes := StrAlloc(255);
GetWindowsDirectory(PRes, 255);
WinDir:= StrPas(PRes);
end
Almaz (2002-09-22 23:31:00) [7]Вероятно вы не правильно ее вызываете - приведите код.
Удачи.