c++, определение буквы hdd, на котором установлена винда

mae 30.06.2004 - 10:00 | Как сделать сабж?
mae 1 - 30.06.2004 - 10:21 | Или она всегда C: ?
Hook 2 - 30.06.2004 - 10:31 | Используй системные переменные. зы:набери в консоли set и выбираю ту что понравиться
SBoyko 3 - 30.06.2004 - 10:38 | GetWindowsDirectory GetSystemDirectory
SBoyko 4 - 30.06.2004 - 10:40 | GetEnvironmentStrings/GetEnvironmentVariable
SBoyko 5 - 30.06.2004 - 10:42 | GetModuleName(LoadLibrary("user32.dll"))[1]
mae 6 - 30.06.2004 - 11:21 | Пробую AnsiString x=GetEnvironmentVariable("SystemDrive"); Но при компиляции выдаёт Cannot convert 'AnsiString' to 'const char *' В чём дело? Что ему не нравится? Вроде в описании этой функции нету никаких чаров.
mae 7 - 30.06.2004 - 11:30 | Прошу прощения, не ту ошибку написал. На самом деле он пишет [Linker Error] Unresolved external '__fastcall Sysutils::GetEnvironmentVariableA(const System::AnsiString)' referenced from C:\PROJECTS\UNIT1.OBJ
Старый Добрый UE 8 - 30.06.2004 - 20:50 | GetModuleName(LoadLibrary("user32.dll"))[1] - хорошо, но GetModuleName(GetModuleHandle("kernel32.dll"))[1] - лучше ;)
Старый Добрый UE 9 - 30.06.2004 - 21:01 | А еще лучше: GetModuleName(GetModuleHandle("kernel32.dll"))[0]
Старый Добрый UE 10 - 30.06.2004 - 21:43 | Но, обратившись к MSDN, находишь счастье: --- char chLetters[2]; GetModuleFileNameExA(NULL, GetModuleHandle("kernel32.dll"), &chLetters, 1); --- ну типа такого :)
mae 11 - 01.07.2004 - 06:05 | Вариант в 8 заработал только так: GetModuleName((unsigned)GetModuleHandle("kernel32.dll"))[1] т.е. с преобразованием в unsigned. А всё-таки что сделать с линкером, чтоб он не матерился на GetEnvironmentVariable?
SBoyko 12 - 01.07.2004 - 17:41 | А эти чем не устраивают? GetWindowsDirectory GetSystemDirectory
mae 13 - 02.07.2004 - 11:52 | В принципе устраивают. Но у меня просто не первый раз уже линкер матерится. И я хотел узнать, что с ним делать. Не в данном случае, а вообще. А за GetSystemDirectory сенкс

>>