ERCC (http://eriedel.info)

VTOOL


�bersicht

VTool ist eine Programmcode-Komponente nach dem Component-Object-Model-Standard (COM). Genauer gesagt, handelt es sich bei VTool um einen COM-Server, also ein Laufzeitmodul, das einer anderen COM-unterst�tzenden Anwendung (Client) bestimmte Objekte und die damit verbundene Funktionalit�t anbieten kann.

VTool wurde prim�r f�r die Verwendung mit Windows Script Host und Visual Basic Script (WSH/VBS) entwickelt. Der Grund liegt einfach darin, dass diese Scripting-Umgebung vielseitig, leistungsf�hig und auf allen Windows-Systemen verf�gbar ist, zudem ist eben auch eine Erweiterbarkeit durch COM-Module gegeben.

In Scripts werden oft COM-Module benutzt, beispielsweise das FileSystemObject (scrrun.dll) oder die Shell-Komponente (shell32.dll). Sie machen dem Script zus�tzliche Funktionen verf�gbar. Das Script (bzw. allgemein der COM-Client) bedient sich dieser Komponenten, indem er eine Instanz eines der dort definierten Objekte (Klassen) erzeugt:

Set obj = CreateObject("Scripting.FileSystemObject")
Set obj = obj.CreateTextFile("test.txt", True)
obj.Close

In gleicher Weise k�nnen die Objekte von VTool verwendet werden, z.B.:

Set obj = CreateObject("VTool.Window")
obj.Create "Textinfo-Fenster"
obj.WriteLine "Beispieltext"
obj.Remove

Damit dies so einfach gelingt, muss VTool – wie alle COM-Server – bei Installation einmal registriert werden (s.u.).


Objekte

VTool war eigentlich nicht als allgemeine Toolbox oder Library gedacht. Viele Objekte und Funktionen haben sich einfach aus praktischen Bedarfsf�llen ergeben. So wollte ich mal in einem Script einen Registry-Wert lesen, der sich als abh�ngig von der Windows-Version erwies (es ging wohl um den Standard-Browser). Daher sind Versionsinformationen nun als Objekt verf�gbar. Auf diese Weise hat der Umfang mit der Zeit etwas zugenommen.

Einen Hauptgegenstand bilden diverse Elemente zur Benutzer-Interaktion, die in einem Script sonst nicht zur Verf�gung st�nden. Beispiel:

Set obj = CreateObject("VTool.DriveList")
drv = obj.Selection("e:", "Laufwerksauswahl")
Abb. VTool-Dialogfenster (Laufwerksauswahl)

WSH/VBS fehlt leider auch die M�glichkeit, API-Funktionen von Windows aufzurufen. (Diese Einschr�nkung wurde mit DynaLib �berwunden.) Einige Objektmethoden von VTool stellen deshalb solche Aufrufe bereit, um so beispielsweise die Verarbeitung von INI-Dateien mittels Script zu unterst�tzen:

Set obj = CreateObject("VTool.Profile")
obj.File = "test.ini"
var = obj.GetValue("Area51", "Roswell")

bestimmte Systemdaten zu erhalten:

Set obj = CreateObject("VTool.System")
MsgBox obj.VolumeGetGUID("C:\"), , "GUID f�r Laufwerk C:"

oder wie erw�hnt die Windows-Version zu ermitteln:

Set obj = CreateObject("VTool.OsVersion")
var = "Windows-Version: " & obj.Major & "." & obj.Minor & "." & obj.Build
WScript.Echo var

Die folgende Tabelle listet alle Objekte der aktuellen Version von VTool in alphabetischer Reihenfolge auf.

Objekt Funktionalit�t
Aux verschiedene Hilfsfunktionen
BinFile bin�rer Lese-/Schreibzugriff auf Dateien
CheckList Auswahlliste (Mehrfachauswahl mit Checkboxen)
Clipboard Textaustausch mit der Zwischenablage
Clock Timer
CWindow Konsolenfenster f�r Textein-/ausgaben
DateTime einige Funktionen zur Systemzeit
DriveList Auswahlliste mit verf�gbaren Laufwerken
DTPick Dialog zur Datums- oder Zeitauswahl
EventLog Aufzeichnung von Ereignissen
File einige Dateifunktionen
FileSelection Dialog zur Dateiauswahl
List Auswahlliste (Einzel- oder Mehrfachauswahl)
Me VTool-Info
MessageBox Windows-Mitteilungsdialog
MInputBox Dialog f�r (mehrere) Benutzereingaben
Noise Tonausgabe und Klangwiedergabe
Notice Benachrichtigungen in der Taskleiste
OsVersion Windows-Versionsdaten
Profile Lesen/Schreiben von INI-Dateien
ProgressDialog Shell-Dialog mit Fortschrittsanzeige
ProgressWindow Fenster mit Fortschrittsanzeige
Registry Suche nach Elementen der Windows-Registratur
System Zugriff auf einige Systeminformationen
TaskDialog Windows-Task-Dialog
Window, Window2 Fenster zur laufenden Textausgabe

Die meisten Dialoge werden modal angezeigt. Die Fenster ProgressDialog, ProgressWindow, Window und Window2 sind nichtmodal und k�nnen der Anzeige von Informationen w�hrend l�ngerer Prozesse dienen.

Die Hilfedatei VTOOL.CHM enth�lt ausf�hrliche Beschreibungen.


Verwendung

Die Objekte von VTool sind einfach konstruiert und daher nicht schwierig zu verwenden. Ihre Erzeugung und abschlie�ende Freigabe folgt dem �blichen Schema:

' Objekt wird erzeugt
Set obj = CreateObject("VTool.Noise")
' Objekt (obj) wird verwendet
obj.PlayFile "tada.wav"
' Objekt wird freigegeben (gel�scht)
Set obj = Nothing

Nat�rlich sind einige Teile anspruchsvoller und verlangen eine gute Kenntnis der technischen Grundlagen und des Betriebssystems.


Lizenz/Hinweise

VTool wird als Freeware und »so wie es ist« zur Verf�gung gestellt. Die �berlassung erfolgt also unentgeltlich und f�r beliebige Verwendungszwecke, aber auch ohne jede Gew�hrleistung oder Haftung. Verbesserungsvorschl�ge sind nat�rlich willkommen.
Beachten Sie bitte, dass jede Benutzung von VTool und den mitgelieferten Beispielen auf eigenes Risiko erfolgt!


Download, Installation

Die Datei Image vtool.zip enth�lt VTOOL.EXE und VTOOLC.EXE zusammen mit der Beschreibung (VTOOL_DE.CHM sowie der englischen Version VTOOL.CHM).
Versionsstand: 3.6.0, Aug. 2024 (vtool.exe), 2.8.0, Jan. 2020 (vtoolc.exe).

Zur Installation gen�gt es, den Inhalt der Archivdatei in ein Verzeichnis Ihrer Wahl zu entpacken.
Als COM-Modul muss VTool dann einmal registriert werden. Dies ist ein ganz einfacher Vorgang und in der Hilfedatei beschrieben. Beachten Sie bitte auch die �brigen Hinweise der Programmdokumentation.

Die Datei Image samples.zip (Okt. 2020) enth�lt einige VBS-Beispiele, die die Auswertung von Windows-Versionsdaten, den Shell-Dialog zur Verzeichnisauswahl, Dateienvergleich sowie die �nderung von Dateizeiten zum Gegenstand haben.

VTool erfordert die VB6-Laufzeitdateien, die normalerweise in Windows enthalten, zudem aber auch als Download verf�gbar sind.
 

http://eriedel.info/files/vtool/vtool.html


ERCC (http://eriedel.info)  2013 - 2024   © Erhard Riedel Computer Consulting (ERCC)

 

Link zur ERCC-Hauptseite   Link zur Info-�bersicht