Einzelnen Beitrag anzeigen

Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.838 Beiträge
 
Delphi 10 Seattle Enterprise
 
#34

Re: XCOPY mit Delphi nachbauen

  Alt 3. Aug 2005, 13:13
Zitat von bigg:
So hier nochmal mal meine Variante:
...
Zur Sicherheit könntest du am Ende DirectoryExists() aufrufen.
Du hast trotzdem noch folgende Probleme:
Zitat von MaBuSE:
...Aber Vorsicht es gibt Leute (wie mich ) die auf ein CD-ROM Laufwerk auch direkt über den UNC Namen zugreifen, in dem Fall gibt es keinen Laufwerksbuchstaben des CD-ROMs.
z.B.: \\SERVER\CDROM\setup.exe -> ExtractFileDrive(Application.ExeName) = ''
Oder dem CD-ROM ist kein Laufwerksbuchstabe zugewiesen, aber das CD-ROM wurde in ein Verzeichnis gemountet.
z.B. C:\CDROM\setup.exe -> ExtractFileDrive(Application.ExeName) = 'C:'
C: ist aber nicht das CD-ROM Laufwerk, sondern die Festplatte (obwohl ja auf das CD-ROM zugegriffen wurde)
Oder der Kunde hat den Inhalt der CD ganz einfach in ein Verzeichnis auf der Festplatte kopiert....
Was ist wenn er dann Laufwerk C zurückgibt, aber das CD-ROM Laufwerk gar keinen eigenen Buchstaben hat und C: die Festplatte ist. ... ?

Prüfen ob der Laufwerksbuchstabe ein CD-ROM Laufwerk ist (Devicetyp) macht auch keinen Sinn, da ein Laufwerk über Netz oder einfach mit Subst gemoutet sein kann.
Code:
subst R: C:\CDROM
Das Laufwerk R: hat in dem Beispiel den Typ eines Netzwerklaufwerks.
(Obwohl es ja das in das Verzeichnis c:\CDROM gemountete lokale CD-ROM Laufwerk ist)

Das DirectoryExists sagt ja nur aus, das es das Laufwerk gibt, nicht was dahintewr steckt.
(°¿°) MaBuSE - proud to be a DP member
(°¿°) MaBuSE - proud to be a "Rüsselmops" ;-)
  Mit Zitat antworten Zitat