Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 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
3-23505
Oleon
2002-06-17 13:36
2002.07.08
InterBase.


14-23757
MJH
2002-06-02 13:26
2002.07.08
Кто здесь с Владивостока, кроме меня и SPeller а ??


1-23625
Strannic
2002-06-25 17:26
2002.07.08
Создание программной группы и иконки (ярлыка).


14-23786
lipskiy
2002-06-08 03:30
2002.07.08
UBPFD - Бесплатная база готовых решений для Delphi


7-23814
Goblinus
2002-04-16 15:59
2002.07.08
Как выдвинуть дверцу CD-ROM a?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский