Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Wechseldatenträger beschreibbar? (https://www.delphipraxis.net/74858-wechseldatentraeger-beschreibbar.html)

rory 9. Aug 2006 19:26


Wechseldatenträger beschreibbar?
 
Wie bekomme ich - über eine Funktion - heraus:

1. ob mein Programm von einem Wechseldatenträger (Diskette, CD/DVD oder USB-Stick) gestartet wurde

2. ob der Datenträger wiederbeschreibbar ist (und zwar sofort)?

Zu 1.:
- Laufwerksbuchstaben von paramstr(0) ermitteln
- dann sinngemäß

Delphi-Quellcode:
function GetDriveImage(s: string): Integer;
var drv: Byte;
begin
  Result := 3;
  drv := GetDriveType(PChar(s + ':\'));
  case drv of
    DRIVE_REMOVABLE: Result := 0;
    DRIVE_FIXED: Result := 1;
    DRIVE_CDROM: Result := 2;
    DRIVE_REMOTE: Result := 3;
  end;
end;
//@Moderator: Absichtlich *keine* Delphi-Tags gesetzt!

Der obigen function wird in s der Laufwerksbuchstabe (als ein ein Zeichen langer String) übergeben. Funktioniert auch.

Zu 2.:
Wie bekomme ich raus, ob das Ergebnis der obigen funcion ein sofort wiederbeschreibbarer Wechseldatenträger (sprich: USB-Stick ohne Schreibschutz) ist?

Geht das wirklich nur über das versuchsweise Schreiben einer dummy-Datei auf das Laufwerk "s" oder geht das irgendwie "eleganter"?

Und ohne kreuzbrechende Verrenkungen unter Windows2000 SP4 mit Delphi5pro? :-)

mfg

[edit=Luckie]@rory: Absichtlich Delphi-Tags gesetzt. Mfg, Luckie[/edit]

mkinzler 10. Aug 2006 00:11

Re: Wechseldatenträger beschreibbar?
 
Zitat:

/@Moderator: Absichtlich *keine* Delphi-Tags gesetzt!
Warum das?
@rory: Absichtlich nicht geantwortet

rory 12. Aug 2006 08:47

Re: Wechseldatenträger beschreibbar?
 
Weil Telekomiker und/oder mein USB-Analog-Modem (eher nicht) z.Zt. heftig herumzicken. Alle paar Minuten ist die Verbindung weg.

Daher schreibe ich z.Zt. noch offline mit dem Notepad und kopiere das dann in meine Posts, falls die wackeliche Verbindung zur DP das zeitlich noch erlaubt.

Dabei klappt schon oft das Einloggen in die DP nicht, da ich vorher schon wieder offline (die Verbindung unterbrochen wurde) bin.

Zum Glück habe ich keine Aktien der Telekomiker :-)

Das *absichtliche* Nichtsetzen der Delphi-Tags war daher notwendig, da ich keine Lust (bzw. Ahnung) habe, wie man das mit Notepad offline macht.

Bin (war?) gerade online und setze gerade Delphi-Tags:
Delphi-Quellcode:
Isses wahr?
Scheint so :-)

Offline habe ich inzwischen ein Progrämmchen gebastelt, das mir die gewünschten Informationen nahezu liefert (ist ein/das Programm auf einem wiederbeschreibbaren Datenträger *sofort* ausführbar).

Demo mit SourceCode folgen, wenn's klappt.

Vielen Dank an die Telekomiker (outside), die mich dazu gezwungen haben: Hirn einschalten :-)

mfg

(bin wohl immernoch online, oder?)

rory 12. Aug 2006 11:56

Re: Wechseldatenträger beschreibbar?
 
Anbei noch ein kleines *push*,

bevor ich mich hier definitiv abmelde.

Je blöder und tümmer ix schreibe, desto besser verte ich fol behandled?

himitsu 12. Aug 2006 12:58

Re: Wechseldatenträger beschreibbar?
 
also das ist wohl alles kein Grund.

erstens schreibe ich in letzer Zeich auch sehr oft was offline (ebenfalls mit Notpad) und schaf es dennoch die lieben Tags zu setzen ( [delphi][/delphi] ist eh viel kürzer, als deine "sinnlose" Ausrede)

zweitens gibt es für alle deine Probleme die passenden Lösungen ... es existieren massig Threads zu diesen Themen

drittens ... auch wenn hier oftmals sehr schnell geantwortet wird (darüber hatten sich auch schon mal welche "beschwert", weil es ihnen zuschnell ging) ... kannst du dieses nicht immer erwarten, vorallem nich in den Ferien, denn nich jeder kennt sich mit allem aus und der, welcher es weiß kommt halt erst etwas später.


und zuletzt: nein, je blöder man sich verhält, je blödere Antworten bekommt man.
(selbst die "Blöden" versuchen sich hier zivilisiert zu benehmen und erstmal nachzudenken und eventuell vorher die Suche zu nutzen).


auch wenn du dieses zwar nichtmehr lesen wirst ... gesagt werden mußte es.


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:37 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz