Diverse Beispiele in Classic Visual Basic

NewEnum

Dieses Beispiel zeigt, wie man eigene Auflistungen schreiben kann, die über eine For…Each-Schleife durchlaufen werden können.

Beispielprojekt (NewEnum.zip)

Projekt im Visual-Basic-6.0-Format.

LinkedList

Mit Hilfe eines Klassenmoduls wird eine dynamische Liste mit 20 Werten erstellt, die umgekehrt werden kann.

Beispielprojekt (LinkedList.zip)

Projekt im Visual-Basic-6.0-Format.

FractConv

Eine Dezimalzahl wird zu einem gekürzten Bruch formatiert.

Beispielprojekt (FractConv.zip)

Projekt im Visual-Basic-6.0-Format.

BitCalc

Über eine Klasse ist es möglich, effiziente Additionen, Multiplikationen sowie Bitverschiebungen durchzuführen.

Beispielprojekt (BitCalc.zip)

Projekt im Visual-Basic-6.0-Format.

ShellUtility

Die shlwapi.dll, die es seit dem Microsoft Internet Explorer 4.0 gibt, stellt zahlreiche Funktionen bezüglich Pfadinformationen, Formatierungen, Registryzugriff und Manipulation von Zeichenfolgen zur Verfügung. Dieses Beispielprojekt demonstriert die Verwendung einiger dieser Funktionen.

Beispielprojekt (ShellUtility.zip)

Projekt im Visual-Basic-6.0-Format.

LoadIconFromLibrary

Dieses Beispiel demonstriert das Laden eines Symbols aus einer DLL, Erstellen eines Picture-Objekts aus der Symbolzugriffnummer und anschließendes Einfügen in ein ImageList-Steuerelement, um es dann als Symbol in einem ListView-Steuerelement zu verwenden.

Beispielprojekt (LoadIconFromLibrary.zip)

Projekt im Visual-Basic-6.0-Format.

GuidGenerator

Eine Klasse, die drei verschiedene Methoden zum Generieren eines GUID zur Verfügung stellt.

Beispielprojekt (GuidGenerator.zip)

Projekt im Visual-Basic-6.0-Format.

ImageHlp

Die ImageHlp.dll stellt Funktionen zum Suchen von Dateien in einem angegebenen Pfad und zum allfälligen Erstellen fehlender Ordner zur Verfügung. Außerdem können Versionsinformationen der ImageHlp.dll ermittelt werden.

Beispielprojekt (ImageHlp.zip)

Projekt im Visual-Basic-6.0-Format.

CDChanger

Ein einfaches Programm, das es ermöglicht, CD-ROM-Laufwerke per Tastendruck bzw. über eine grafische Benutzerschnittstelle zu öffnen und zu schließen. Die dabei auftretenden MCI-Fehler werden ausgegeben.

Beispielprojekt (CDChanger.zip)

Projekt im Visual-Basic-6.0-Format.

ErrorLevel

Eine Anwendung kann vor ihrem Terminieren ihren Rückgabewert setzen, der innerhalb einer aufrufenden Stapelverarbeitunsdatei ausgewertet werden kann.

Beispielprojekt (ErrorLevel.zip)

Projekt im Visual-Basic-6.0-Format.

TopMost

Ein Fenster kann wahlweise immer im Vordergrund, also über allen anderen Fenstern, die nicht immer im Vordergrund gehalten werden, angezeigt oder automatisch im Hintergrund angezeigt werden. Weiters besteht die Möglichkeit, festzustellen, ob ein bestimmtes Fenster immer im Vordergrund angezeigt wird.

Beispielprojekt (TopMost.zip)

Projekt im Visual-Basic-6.0-Format.

PlayMP3

Eine MPEG-Layer-3-Datei (MP3) kann über die Funktion mciSendString abgespielt werden. Es besteht die Möglichkeit, die Wiederhabe zu starten, anzuhalten und zu beenden. Weiters kann die Audiodatei in einer Endloswiederholung abgespielt werden. Damit die gezeigte Vorgehensweise funktioniert, müssen entsprechende Codecs installiert sein.

Beispielprojekt (PlayMP3.zip)

Projekt im Visual-Basic-6.0-Format.

AppActivate

Es wird aufgezeichnet, wenn die Anwendung aktiviert bzw. deaktiviert wird.

Beispielprojekt (AppActivate.zip)

Projekt im Visual-Basic-6.0-Format.

TitleBarPicture

Je nach Aktivierungsstatus eines Formulars wird eine andere Grafik in die Titelleiste des Formulars gezeichnet.

Beispielprojekt (TitleBarPicture.zip)

Projekt im Visual-Basic-6.0-Format.

GlobalMouseClicks

Niederdrücken und Loslassen der drei Maustasten werden systemweit abgefangen und in Pseudoereignisse weitergeleitet.

Beispielprojekt (GlobalMouseClicks.zip)

Projekt im Visual-Basic-6.0-Format.

Internat

Je nach eingestellter Sprache des Systems werden entsprechende Zeichenfolgen und Grafiken aus einer Ressourcendatei geladen. Im Beispiel werden folgende Spracheinstellungen unterstützt:

Sprache Region
Englisch (USA)
Italienisch (Italien)
Deutsch (Deutschland)
Deutsch Österreich

Zum Testen können die Systemspracheinstellungen über intl.cpl manipuliert werden.

Beispielprojekt (Internat.zip)

Projekt im Visual-Basic-6.0-Format.

MoveEvent

Über Subclassing wird festgestellt, wenn ein Formular verschoben wird. Im Formular wird die neue Position des Formulars ausgegeben.

Beispielprojekt (MoveEvent.zip)

Projekt im Visual-Basic-6.0-Format.

OpenWith

Der Dialog Öffnen mit… des Betriebssystems wird wahlweise über eine undokumentierte unvollständige API-Funktion oder über RunDLL angezeigt. Weiters kann der Assistent zum Hinzufügen von Druckern über eine API-Funktion gestartet werden.

Beispielprojekt (OpenWith.zip)

Projekt im Visual-Basic-6.0-Format.

MinimizeEvent

Über Subclassing eines Formulars können dessen Ereignisse für Minimieren, Wiederherstellen und Maximieren behandelt werden. Dadurch besteht die Möglichkeit, den Vorgang abzubrechen.

Beispielprojekt (MinimizeEvent.zip)

Projekt im Visual-Basic-6.0-Format.

SystemSetupDialogs

Verschiedene Dialoge der Systemsteuerung können über die rundll32.exe angezeigt werden.

Beispielprojekt (SystemSetupDialogs.zip)

Projekt im Visual-Basic-6.0-Format.

DialogPosition

Mittels eines Hooks kann die Position von Fenstern bei deren Öffnen festgelegt werden. Im Beispiel werden auf diese Weise ein Dialog zur Dateiauswahl und ein Meldungsfeld an einer vorgegebenen Position plaziert.

Beispielprojekt (DialogPosition.zip)

Projekt im Visual-Basic-6.0-Format.

SpecialKeyState

Der Status der Tasten Num, Caps und Scroll kann gelesen und gesetzt werden.

Beispielprojekt (SpecialKeyState.zip)

Projekt im Visual-Basic-6.0-Format.

InstalledCompressors

Dieses Beispiel zeigt, wie mittels Video for Windows die installierten Kompressoren für Audio und Video und deren Eigenschaften bestimmt werden können. Zudem sind die zum Anzeigen der Informationsdialoge der Kompressoren erforderlichen Deklarationen enthalten.

Beispielprojekt (InstalledCompressors.zip)

Projekt im Visual-Basic-6.0-Format.