Interop Forms Toolkit mit Visual Basic 2008 Express Edition -Weiche Migration auch mit der "kleinen" Visual Basic Version
(von Klaus Löffelmann und Andreas Belke)
Das Interop Forms Toolkit ist normalerweise nur für den Einsatz mit einer der größeren Visual Studio Versionen konzeptioniert. Dieser Artikel zeigt, wie Sie auch in Zusammenarbeit mit Visual Studio Express Edition die Vorteile einer weichen Migration mit dem Interop Forms Toolkit nutzen können, und welche Voraussetzungen nötig sind, um beide zur Zusammenarbeit zu bewegen!
Voraussetzungen für die Nutzung des Interop Forms Toolkit 2.0 mit der Express-Edition
Im Folgenden wird davon ausgegangen, dass das Interop Forms Toolkit 2.0 im Verzeichnis C:\Program Files\Microsoft Visual Basic 2005 Power Packs\Interop Forms Toolkit 2.0installiert wurde.
...hier gehts los...
Vorarbeiten
Bei der Installation des Toolkits wird im SDK\Source Unterverzeichnis die Datei Source.zip angelegt. Öffnen Sie die Datei und kopieren Sie das Verzeichnis InteropFormProjectTemplate auf den Desktop. Entfernen Sie den Schreibschutz des nun auf dem Desktop liegenden Verzeichnisses und ändern Sie auch die Unterverzeichnisse gleich mit. Wechseln Sie in das Verzeichnis und öffnen Sie die Datei InteropFormProjectTemplate.sln. Das Projekt wird nun konvertiert. Achten Sie auf eine fehlerfreie Konvertierung (Treten Fehler auf, prüfen Sie, ob der Schreibschutz entfernt wurde).
Weiter
Abbilgund 1: InteropFormProjectTemplate nach der Konvertierung
Wie Sie im Projektmappen-Explorer und in der Fehlerliste sehen, kann die Assembly Microsoft.InteropFormTools nicht verwendet werden. Klicken Sie mit der rechten Maustaste auf den Eintrag und löschen Sie ihn. Im Anschluss fügen Sie einen neuen Verweis ein (rechte Maustaste auf Verweise – Verweise hinzufügen …
Zurück
Weiter
Abbildung 2: Verweis hinzufügen
- Klicken Sie auf Durchsuchen, und wählen Sie das Toolkit Installationsverzeichnis aus. Dort befindet sich im Unterverzeichnis SDK\Libraries die benötigte Assembly Microsoft.InteropFormTools.dll
- Beenden Sie den Dialog mit Ok.
Es ist in dem Projekt nun noch ein Fehler vorhanden (Ungültiges UUID-Format). Dieser Fehler ist in diesem Kontext nicht so wichtig und kann ignoriert werden.
Zurück
Weiter
Vorlage Exportieren
Nun ist es fast geschafft. Exportieren Sie die nun die Projektvorlage (Datei/Vorlage exportieren).
Abbildung 3: Vorlagentyp auswählen
Zurück
Weiter
Abbildung 4: Assistent zum importieren von Vorlagen
Achten Sie darauf, dass „Vorlage automatisch in Visual Studio importieren“ aktiviert ist.
Sie können das Projekt nun Schließen und das Verzeichnis auf dem Desktop löschen.
Zurück
Weiter
Anlegen eines neuen Projekts in Visual Studio Express Edition
Beim Neuanlegen eines Projekts steht nun die neue Vorlage zur Verfügung.
Für das folgende Beipsiel werden wir nun einmal ein neues Projekt auf Basis dieser Vorlage erstellen. Das Einzige, was uns jetzt inhaltlich noch fehlt, ist der Wrapper für unsere Objekte (hier also für InteropForm1).
Dazu legen wir eine neue Klasse Namens InteropForm1.wrapper.vb an.
Zurück
Weiter
Für diese Klasse tragen wir nun folgenden Code ein
Option Strict Off
Option Explicit On
Imports Microsoft.InteropFormTools
Namespace Interop
<System.Runtime.InteropServices.ClassInterface(Runtime.InteropServices.ClassInterfaceType.AutoDual), _
System.Runtime.InteropServices.ComVisible(true)> _
Partial Public Class InteropForm1
Inherits InteropFormProxyBase
Public Sub New()
MyBase.New
FormInstance = New DotNetForm.InteropForm1()
RegisterFormInstance()
End Sub
End Class
tEnd Namespace
Zurück
Weiter
Dafür wird ebenfalls eine Klasse namens InteropForm1 erstellt. Diese ist - entgegen des Formulars - jedoch in einem anderen Namespace und wird für COM sichtbar gemacht.
In oberem Beispiel muss der vollqualifizierte Name des echten InteropForm1 durch den Stammnamespace und dem Formular ersetzt werden.
DotNetForm.InteropForm1 wird in InteropFormProjectTemplate1.InteropForm1 geändert.
Die Assembly kann nun kompiliert werden und über die normalen Interop Toolkit Mechanismen in VB6 genutzt werden.
Zurück