Buchempfehlung
Windows-Programmierung. Das Entwicklerhandbuch zur WIN32-API
Windows-Programmierung. Das Entwicklerhandbuch zur WIN32-API
"Der" Petzold, das über 1000 Seiten starke Standardwerk zum Win32-API - besonders nützlich u. a. bei der GUI-Programmierung in FreeBASIC! [Mehr Infos...]
FreeBASIC-Chat
Es sind Benutzer im FreeBASIC-Chat online.
(Stand:  )
FreeBASIC bei Twitter
Twitter FreeBASIC-Nachrichten jetzt auch über Twitter erhalten. Follow us!

Tutorial

Wmi benutzen mit FreeBasic

von RedakteurytwinkySeite 1 von 6

Ziel soll es sein, eine Laufwerksliste zu erstellen mit Angabe von Gesamtgröße, freiem Platz UND Anschlußtyp, sodaß USB-Laufwerke auch als solche ausgegeben werden.

Zunächst eine Vorbemerkung: Ohne den Beitrag von Externer Link!Zippy wäre dies Tutorial nicht möglich gewesen.
Deshalb herzlichen Dank an ihn ;-))

Ausgangspunkt war die Tatsache, daß meine externen Festplatten(!!) zwar von Windows erkannt werden, aber als eingebaute Festplatten im System geführt werden, das konnte ich mit dem Umbenennen für mich zwar erkennbar machen: die ~250GB-Platte heißt jetzt X: (für eXtern) und die GROßE(Sata) ist T: (für TB, weil sie laut Hersteller 1000 GB hat), doch Windows muß doch auch andere Möglichkeiten bieten, um an exakte Informationen heranzukommen.
Letztlich gab es nur einen Weg: WMI benutzen
Die WMI(Windows Management Instrumentation) gibt es auf alle Fälle seit Win2k(also Windows 2000) und wird in den neueren Windows-Version durch die Powershell ersetzt, weil diese leistungsfähiger ist..
Da die PS(in eingeweihten Fachkreisen auch als Monad bekannte Shell) aber nicht auf jedem Computer installiert ist, nehmen wir einfach mal 'nur' die WMI. Auf der Befehlszeile(also im DosFenster) wird die WMI mit dem Programm WMIC.Exe verwendet, das klappt ganz gut, wenn der Benutzer Adminrechte hat und weiß, was er tut(ZWEI wichtige Voraussetzungen..)! Oder, um ein Bild aus einem anderen Tutorial zu verwenden: Der Benutzer muß Brain.Exe installiert haben und Think.Exe muß aktiv sein..
WMIC läßt sich am einfachsten bedienen, wenn die sogenannten Alias(se) benutzt werden. Das sind Abkürzungen, die den Aufruf vereinfachen. Eine Liste läßt sich mit dem Befehl:

WMIC Alias Get FriendlyName,Target<cr>

erzeugen. Allerdings ist diese Liste unsortiert und auch eine Erweiterung mit Sort hilft nur
bedingt weiter:

WMIC Alias Get FriendlyName,Target | Sort /+1<cr>

weil hier die Überschriften mit einsortiert werden. Ich gehe hier nicht weiter auf die Bedienung von WMIC.Exe ein, weil das zu weit führen würde. Interessierte können über eine Suchmaschine an weitere Tipps zu WMIC.Exe gelangen..
(und auch an eine Externer Link!AliasListe mit mehr Funktionen)
Anmerkung: Sicherlich werden im Netz verfügbare Listen mit Sorgfalt erstellt und gepflegt, sie könnten aber auch Nachteile haben: Möglicherweise sind auf dem lokal vorhandenen Rechner gar nicht alle Funktionen verfügbar, deshalb ist die Programm-Lösung besser, aber auch hier gibt es zuviele Aufrufe und auch fehlende, das werden wir später noch feststellen ;-))
Doch wir wollen ja FreeBasic benutzen!

 

Gehe zu Seite Gehe zu Seite  1  2  3  4  5  6  
Zusätzliche Informationen und Funktionen
  • Das Tutorial wurde am 19.02.2011 von Redakteurytwinky angelegt.
  • Die aktuellste Version wurde am 19.02.2011 von Redakteurytwinky gespeichert.
  Bearbeiten Bearbeiten  

  Versionen Versionen