Hallo Stefan,
danke für deine Antwort! Ich habe mich heute auch sofort dran gesetzt, die guten Tipps in das Plugin einzubauen. Ich bin zwar schon etwas weiter gekommen, als zuvor, aber leider klappt es immernoch nicht ganz. Vielleicht stelle ich mich da auch etwas ungeschickt an, aber die Informationen aus dem Visual Basic Objektkatalog, zusammen mit dem Wiki und den Forums-Tipps führen mich noch nicht ganz ans Ziel.
Ich vermute allerdings, dass ich derzeit (u.a.) am falschen ListView scheitere. Wenn ich das Wiki richtig verste, muss es ein "ExtListView" sein. Ich habe es dann mal mit dem Standard ListView aus den CommonControls versucht, aber das gibt nur Laufzeitfehler in der Funktion FillTableRow und anderen, die ich ausprobiert hae.
Hinter dem Link im Wiki ist dieses ExtListView aber nicht mehr auffindbar und auch Google hilft mir da nicht weiter. Hat evtl. noch jemand einen Link oder das Control (ocx?), um mir weiter zu helfen?
Einen ICommandExecutor habe ich mir erzeugen lassen. Allerdings kann ich den nicht wirklich Testen, da ich die GUIDs der anderen Module/Plugins nicht kenne. Ich nehme an, die würde ich später aus dem Listview gewinnen können? Ein Test mit der GUID meines Plugins führt jedenfalls zu einen Laufzeitfehler ( Fehler-Nr: 13 (Typen unverträglich), Modul: CommandManager, Prozedur: StartExecution), ändere ich die GUID ab, kommt nur die Meldung, dass diese nicht bekannt ist.
Ich poste hier mal die verwendten Testzeilen, damit mir vielleicht jemand weiter helfen kann:
Dim mManProv As DMXCTypeLib.ICommandManagerProvider
Dim comMan As DMXCTypeLib.ICommandManager
Set mManProv = mHelper
Set comMan = mManProv.CommandManager
comMan.AddColumnHeaders ListView1 ' < Klappt noch! Die Header werden im Listview angezeigt
Dim comEx As ICommandExecutor
Dim b As Byte
b = 0
Dim ov As Long
ov = 20
Set comEx = comMan.CreateCommand("{dff72797-b5cd-4184-8995-2918c9e8287c}", "[DMXIn] Kanal 1", "ON", b, ov) ' GUID meines Plugins und bestehendes Kommando
Dim min As Long
Dim max As Long
Dim val As Long
min = 0
max = 100
val = ov
comEx.ExecuteCommand val, min, max, mHelper.MyStream ' Erzeugt obigen Laufzeitfehler 13
Dim item As ListItem
Set item = ListView1.ListItems.Add(, , x.ModuleGUID) ' Trägt Testweise die GUID in das Listview ein
comMan.FillTableRow x, item, 0 ' Laufzeitfehler, da ich vermutlich das ExtListView brauche?
Display More
Vielen Dank an alle, die sich meinen obigen Code angetan haben
und mir weiter helfen wollen!