Hallo, ich möchte die Dateinamen von Disketten und USB-Sticks in eine MySQL-Datenbank eintragen. Dazu ist es notwendig die Disketten eindeutig zu benennen und zu erkennen, wie man dies mit dem Befehl " label " , und auch wieder lesen wie man es mit dem Befehl " vol " machen kann...
In OOO (V3) finde ich dazu keine passenden Funktionen bzw. Befehle. die die Datenträgerbezeichnung bzw. den Volumename schreiben bzw. zurückgeben.
Ich würde mich freuen, hier eine Lösung bzw. einen Lösungsweg genannt zu bekommen.
Vielen Dank im Voraus
Paul
Name Datenträger schreiben und lesen
Moderator: Moderatoren
Re: Name Datenträger schreiben und lesen
Hallo Paul,
eine direkten Weg mit OOo-Basic eine LW-Bezeichnung zu lesen oder zu schreiben kenne ich nicht.
Man kann es aber z.B. über eine Batch-Datei die man mit Basic beschreibt lösen.
Ist aber doch besser als nix. Oder?
Erstelle Dir mit einem Texteditor eine leere Datei mit dem Namen "Label.bat" und lege diese z.B auf dem Desktop ab.
(Direkt unter "C:" funktioniert bei mir komischerweise nicht.)
Mit folgendem Code kannst Du dann die Batchdatei beschreiben und diese wird dann auch direkt ausgeführt:
Das Auslesen könnte man über die Registry realisieren:
Du musst "nur" den Richtigen Pfad im
finden, der bei mir z.B so lautete:
Ist das ein Lösungsansatz?
Garfield
Edit: Eventuell kann die Deine Firewall das Ausführen der BAT-Datei unterdrücken. Also die FW entsprechend einstellen!!!
eine direkten Weg mit OOo-Basic eine LW-Bezeichnung zu lesen oder zu schreiben kenne ich nicht.
Man kann es aber z.B. über eine Batch-Datei die man mit Basic beschreibt lösen.
Ist aber doch besser als nix. Oder?
Erstelle Dir mit einem Texteditor eine leere Datei mit dem Namen "Label.bat" und lege diese z.B auf dem Desktop ab.
(Direkt unter "C:" funktioniert bei mir komischerweise nicht.)
Mit folgendem Code kannst Du dann die Batchdatei beschreiben und diese wird dann auch direkt ausgeführt:
Code: Alles auswählen
Sub Disk_Label_schreiben
aFile = "C:/Dokumente und Einstellungen/Juergen/Desktop/Label.bat" 'Pfad zur BAT-Datei
bFile = converttoURL(aFile)
iNumber = Freefile
newLabel = "MYLABEL" 'Neuer Name für LW
Open bFile For Output As #iNumber
'BAT_Datei schreiben
Print #iNumber, "CD \"
Print #iNumber, "LABEL E: " & newLabel 'Laufwerksbuchstaben anpassen!!
Print #iNumber, "EXIT"
Close #iNumber
oSer = createUNOService("com.sun.star.system.SystemShellExecute")
oSer.execute(aFile,0,0)'BAT-Datei ausführen
End Sub
Code: Alles auswählen
Sub Disk_Label_lesen
GlobalScope.BasicLibraries.LoadLibrary("ImportWizard")
'Pfad anpassen
sTemplateKeyName = "Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2\{cf49ef11-462b-11dd-9a20-806d6172696f}"
sTemplateValueName = "_LabelFromReg"
HD_Label = QueryValue(HKEY_CURRENT_USER, sTemplateKeyName, sTemplateValueName)
msgbox "HD Label= " & HD_Label
End Sub
Code: Alles auswählen
MountPoints2\
Code: Alles auswählen
{cf49ef11-462b-11dd-9a20-806d6172696f}
Garfield
Edit: Eventuell kann die Deine Firewall das Ausführen der BAT-Datei unterdrücken. Also die FW entsprechend einstellen!!!