Форум: "Основная";
Текущий архив: 2002.07.08;
Скачать: [xml.tar.bz2];
ВнизПуть к каталогу, в котором установлена Windows Найти похожие ветки
← →
KIR (2002-06-25 13:28) [0]Народ, как узнать сабж?
← →
Wild (2002-06-25 13:30) [1]Ты апишный хелп читаешь когда-нибудь?
← →
KIR (2002-06-25 13:33) [2]Читал. Мне раньше этого небыло нужно. А сейчас нужно, причем срочно, по-моему для этого и придумали форумы. Я прекрасно понимаю, что эта информация есть в АПИшном хэлпе, но "быстрый" поиск не помог.
← →
Wild (2002-06-25 13:33) [3]Там же все по-русски написано:
The GetWindowsDirectory function retrieves the path of the Windows directory. The Windows directory contains such files as Windows-based applications, initialization files, and Help files.
UINT GetWindowsDirectory(
LPTSTR lpBuffer, // address of buffer for Windows directory
UINT uSize // size of directory buffer
);
← →
Wild (2002-06-25 13:35) [4]Если из батника надо узнать....ну там проге параметром передать, так это системная переменная %WINDIR%
← →
KIR (2002-06-25 13:59) [5]Если я все правильно понял, то lpBuffer и есть путь к каталогу, но только в формате PChar. А как его перевести в String.
← →
Skier (2002-06-25 14:02) [6]> KIR
StringVar := PChar(lpBuffer);
← →
Wild (2002-06-25 14:08) [7]>Skier
А я завожу переменную string
...
var Str: string;
...
GetWindowsDirectory(PChar(Str),...)
....
только перед вызовом функции надо определить длину стринга
SetLength(S,255) //например так
← →
Skier (2002-06-25 14:15) [8]> Wild
Тоже вариант...
← →
stupid (2002-06-25 14:19) [9]
procedure TForm1.Button1Click(Sender: TObject);
var
szPath : Array[0..max_path-1] of Char;
Path : String;
begin
GetWindowsDirectory(szPath,max_path);//Каталог Windows
Path:=StrPas(szPath);
Label4.Caption:=Path;
end;
← →
Игорь Шевченко (2002-06-25 14:38) [10]Path:=StrPas(szPath); Лишняя строка
← →
DeMoN-777 (2002-06-25 15:02) [11]
Procedure FindWinDir
var
apchar:array [0..255]of char;
s:string;
begin
GetWindowsDirectory(apchar,sizeof(apchar));
s:=strpas(apchar);
end;
Может так.
← →
Игорь Шевченко (2002-06-25 15:35) [12]DeMoN-777 © (25.06.02 15:02)
А так точно нельзя. Потому что s нигде не используется.
И кроме того, преобразование StrPas имеет смысл только для ShortString. Для AnsiString это преобразование происходит неявно при присваивании переменной типа string переменной типа PChar
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.07.08;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.005 c