var s: searchrec;
findfirst ('c:\*.*',VolumeID,s);
if doserror=0 then writeln(s.name);
на фри сделал так:
var s: tsearchrec;
if findfirst ('c:\*.*',faVolumeID,s)=0 then writeln(s.name);
findclose(s);
не работает.
Как надо?
Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.
![]() |
Билли Боб |
![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 47 Пол: Мужской Репутация: ![]() ![]() ![]() |
На TP вот так работает:
на фри сделал так:
не работает. Как надо? |
![]() ![]() |
IUnknown |
![]()
Сообщение
#2
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 013 Пол: Мужской Ада: Разработчик Embarcadero Delphi: Сторонник Free Pascal: Разработчик Репутация: ![]() ![]() ![]() |
Цитата не работает. Не надо так категорично. Работает, но не везде: под чистым ДОС-ом (при использовании GO32v2) этот код прекрасно покажет метку диска. Во всех остальных случаях - нет. Проблема в том, что получение метки диска - операция некроссплатформенная, и для ее выполнения необходимо использовать API твоей системы. Работаешь под Windows - значит, GetVolumeInformation. А эту константу faVolumeID уже давно пора объявить deprecated, как сделали в Дельфи |
![]() ![]() |
![]() |
Текстовая версия | 8.09.2025 12:50 |