Вниз
Скачать: CL | DM;

Метка диска   Найти похожие ветки 

← →
veb   (2006-04-09 21:20) [0]

Здравствуйте. Как получить метку диска и второе, что здесь не правильно?

function GetVolumeLabel(Drive: Char): String;
var
 SR: TSearchRec;
 SearchString: String[7];
begin
 SearchString := Drive + ":\*.*";
 if FindFirst(SearchString, faVolumeID, SR) = 0 then
   Result := SR.Name;
 FindClose(SR);
end;

выдает название первого найденного файла, а по идее должно давать метку диска.


← →
Anatoly Podgoretsky ©   (2006-04-09 21:22) [1]

FindFirst + FindNext пока не будет найдена именно метка


← →
AlexeyT ©   (2006-04-09 21:26) [2]

Вот:

var
 dir: string;
 buf1, buf2: array[0..50] of char;
 nNameLen: DWORD;
begin
     dir:= ch+":\";
     FillChar(buf1, SizeOf(buf1), 0);
     FillChar(buf2, SizeOf(buf2), 0);
     if GetVolumeInformation(PChar(dir), @buf1, SizeOf(buf1),
       @fSerial, nNameLen, fFlags, @buf2, SizeOf(buf2)) then
       begin
       fLabel:= buf1; //метка тома
       fSystem:= buf2; //файловая система
       end;


← →
Palladin ©   (2006-04-09 21:34) [3]


> Anatoly Podgoretsky ©


только пытался взять, самое интересное, полная фигня, не находит оно это...


← →
veb   (2006-04-09 21:41) [4]

to Alexey
значение fFlags чему выставлять? и какой модуль требуется подключить?

to Anatoliy
не понял, а что тогда находит при первом вызове FindFirst? ведь условие в If выполняется? Следовательно, найдена именно метка диска, а выдает имя файла.


← →
begin...end ©   (2006-04-09 22:19) [5]

> veb   (09.04.06 21:41) [4]

fFlags — это выходной параметр. Поэтому инициализировать его не нужно. К тому же, в данном случае (для получения метки тома) он не нужен вовсе:

var
 VL: array [0..MAX_PATH] of Char;
begin
 if GetVolumeInformation("C:\", VL, sizeof(VL), nil, Cardinal(nil^), Cardinal(nil^), nil, 0) then
   ShowMessage(VL)
end



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.025 c
15-1143623335
_RusLAN
2006-03-29 13:08
2006.04.23
Посоветуйте программу для рисования структуры БД (уже готовой БД)


2-1144145688
Ламот
2006-04-04 14:14
2006.04.23
Запуск стороннего приложения


2-1144324054
barakuda
2006-04-06 15:47
2006.04.23
Полосатый


4-1137759065
som
2006-01-20 15:11
2006.04.23
Добавлeние учетных записей


15-1143659754
cyc
2006-03-29 23:15
2006.04.23
Почему выбирают 1С




   Наверх