Am 08.11.2020 um 19:54 schrieb retired developer:
> On 08.11.20 17:34, Peter Dassow wrote:
>> Hallo, suche Hilfe beim Abfangen eines nicht setzbaren Laufwerks.
>> Es soll versucht werden, Laufwerk D: anzusprechen.
>
> Warum so kompliziert?
>
> Sei WinXP bzw. Delphi7 gibt es:
>
>
https://docs.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-getlogicaldrives
>
>
> --- schnipp ---
> var driveIndex: Integer;
>
> driveIndex:= 8;
> if (GetLogicalDrives and driveIndex) = 0
> then // Laufwerk nicht vorhanden
> else // Laufwerk vorhanden
>
> --- schnapp ---
>
> wobei driveIndex ist: 1=A, 2=B, 4=C, 8=D, usw.
>
> Ist doch viel einfacher, oder?
>
> Gruesse
> Julius
>
Nein. Die Aufgabe war nicht, herauszufinden ob es ein Laufwerk gibt oder
nicht. Sondern das, selbst wenn es ein Laufwerk C: gibt, der Benutzer
keins anwählen kann. Die Annahme war, das Betriebssystem ist immer auf
C:, daher soll er darauf kein Zugriff haben.
Alle anderen Laufwerke soll er aber durchaus anwählen können.
Später (bei OnChange) frage ich dann ab, ob jemand C: ausgewählt hat,
wenn er das tut, kriegt er eine Warnung und es wird wieder auf D:
zurückgewechselt.