Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Eigener .NET Instrument Treiber in VEE? .NET 4.0 Win7Pro
22.09.2010, 07:12
Beitrag: #1
Eigener .NET Instrument Treiber in VEE? .NET 4.0 Win7Pro
Hallo,

ich will eigene Instrument Treiber in VB.NET schreiben, die ich in VEE und auch in .NET verwenden will.
Ich verwende ein komplett neu aufgesetztes System, Windows 7 Pro 32Bit, VEE 9.2 Pro, Agilent IO 15.5 und VB 2010 Express mit .NET 4.0.

Meine bis jetzt erstellten mini Biblos funktionieren unter VB.NET. Ich bekomme diese aber nicht unter VEE registriert, damit ich diese verwenden kann.
Wenn ich meine mini.DLL (.NET assembly mit „StrongName“) in VEE verweisen will, bekomme ich zuerst die Meldung „“VEE can’t register the ActiceX control, please run as Administrator”: - -> obwohl ich VEE mit Administratorrechte ausführe. Als zweite Fehlermeldung: „… my.DLL is not a valid .NET assembly”
Ich glaube, dass die Biblo Struktur meiner Lib noch nicht (zu VEE) passt. Mit .NET habe ich noch keine große Erfahrung.

Kann mir jemand ein einfaches Beispiel aufzeigen, wie eine Biblo unter VB.NET 4.0 korrekt gemacht wird, damit diese in VEE funktioniert?

Ziel ist, meine Messgeräte Biblo in VEE einzubinden damit ich dann über den Object Browser meine Messgeräte Aktionen auswählen und damit einfach einbinden kann.

Gruß, Sigi
Diese Nachricht in einer Antwort zitieren
22.09.2010, 11:22
Beitrag: #2
RE: Eigener .NET Instrument Treiber in VEE? .NET 4.0 Win7Pro
Moin,

so genau kenne ich mich mit den Eigenschaften der Assemblies nicht aus.
Ich habe aber schon mal eine selbstgeschriebene .NET DLL in VEE eingebunden und zwar als Import Library.

Was man als .NET Assembly oder als ActiveX Control zu beachten hat wüsste ich auch gern.

Ich würde an deiner Stelle erstmal mit was ganz Einfachen z.B. A+B anfangen und sicherstellen, dass keine Errors durch falsche Typen entstehen.
Mehr Info's für die Erstellung von .OCX und Co. findet man bestimmt bei MS, doch da wird man mit Lese-Stoff fast erschlagen.

Gruߟ Bratbaecker
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
22.09.2010, 14:52 (Dieser Beitrag wurde zuletzt bearbeitet: 22.09.2010 14:53 von detlef.)
Beitrag: #3
RE: Eigener .NET Instrument Treiber in VEE? .NET 4.0 Win7Pro
Hast du dein VBprojekt als .net oder als dll Erzeugen gestartet?
Und wie hast due deine .net lib eingebunden ? Als lib und import library ( glaube ich ist falsch) , oder importiert in den .net assemblies mit dem Namespace-import? Wenn du deine Sache dort nicht findest, musst du "browse" benutzen. In der Liste stehen nur Sachen, die Windows bekannt sind- nicht "veroeffentlichte" Biblios muss man extra zuweisen mit dem Link .

Leider hab ich diese Sachen unter WIN 7 selbst noch nicht probiert und kann daher nur schlau quatschen ;-)

aber vielleicht hilfts ja.

Aber es muss so aehnlich ablaufen wie bei der MCC dll -siehe schnelle Messdatenerfassung.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
27.09.2010, 09:57
Beitrag: #4
RE: Eigener .NET Instrument Treiber in VEE? .NET 4.0 Win7Pro
Mahlzeit,

Problem nach einem Hinweis aus dem Amerikanischen Forum gelöst:
Es liegt offensichtlich an VEE 9.2 Pro, welches (noch) nicht mit dem .NET 4.0 Framework klar kommt.
Wenn die Biblo für .NET 3.5 Framework erstellt wird, kann ich meine mini Lib in VEE laden und dann auch bequem über den Objekt Browser die eigenen Funktionen einbinden.

Für alle die es nachvollziehen wollen:
Ich verwende ein komplett neu aufgesetztes System, Windows 7 Pro 32Bit, VEE 9.2 Pro, Agilent IO 15.5 und VB 2010 Express mit .NET 4.0.
Agilent Beispiel Lib Class: http://www.home.agilent.com/agilent/redi...nal%20File
Davon habe ich mir nur die prinzipielle Struktur einer .NET Lib abgeschaut. Das Beispiel enthält den veralteten Agilent.TMFramework!
Aktuelles Agilent VISA COM Beispiel: http://www.home.agilent.com/agilent/redi...SR.General
Einbindung der aktuellen IVI.Visa.Interop Aufrufe in die eigene Lib. Meine Lib habe ich dann erst mal in .NET getestet.
Eigene Lib wird beim Erstellen eine .NET Assembly .dll. Unter W7P muss diese für .NET 3.5 erstellt werden. Option dafür findet man unter Kompiler, Erweiterte Kompilereinstellungen, Zielframework auf .NET 3.5.

In VEE habe ich dann meine Lib über Device - .NETAssembly Reference mit Browse die Lib geladen. Nach dem Laden auch gleich den Namespace eingebunden.
Im Objekt Browser war dann meine Lib unter .NET/CLR Objects mit meinem vergebenen Namen zu finden.
Damit konnte ich in VEE die ersten einfachen Aufrufe tätigen. Nach mehrmaligen Start, gab es immer wieder mal Hänger. Das liegt aber bestimmt am Laden und Entladen der Lib. Ich habe selbst noch keine Erfahrung in .NET. Es sind bestimmt noch einige Fehler in meiner mini Lib enthalten.
Das Ziel für eine beidseitige Verwendung in VEE und .NET ist aber damit erreicht.

Vielleicht gibt es ja einen erfahrenen .NET Entwickler, der hierzu ein konkretes Beispiel einbringen kann.

Gruß, SK
Diese Nachricht in einer Antwort zitieren
04.10.2010, 17:09
Beitrag: #5
RE: Eigener .NET Instrument Treiber in VEE? .NET 4.0 Win7Pro
Ich hab mal .net4.o fuer WInXP installiert und versucht, darauf zuzugreifen, und bekam auch diesen "Fehler".
Ist aber schon logisch, denn Vee9.2 wurde deutlich vor .net4 fertiggestellt und kann diese Umgebung gar nicht kennen.
Warten wir mal auf VEE 9.5 ;-)
Manchmal ist es ja sinnig, sich die Unterstuetzten Systeme anzuschauen, und wenn es nicht dabei steht, heisst es meistens , dass es nicht tut...muss aber nicht. Officially not supported bedeutet : muss nicht, kann aber eventuell.

Ansonsten die Sache mit der .net dll : ist ein schoenes Beispiel von measurement Computing und den IOCards.., oder Meilhaus redlab. Hatten wir mal hier einen Thread zu.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
10.11.2010, 16:27 (Dieser Beitrag wurde zuletzt bearbeitet: 10.11.2010 16:28 von detlef.)
Beitrag: #6
RE: Eigener .NET Instrument Treiber in VEE? .NET 4.0 Win7Pro
Hier ist mal ein Tip, wie man Dotnet 2 fuer VEE7.5 bekannt macht.
Vielleicht laeufts dann entsprecehnd angepasst auf 4.0 fuer dich...
Aus der VRF:

--
Place an XML file in the same directory as vee.exe and call it vee.exe.config.

Put this text into it.

<?xml version ="1.0"?>

<configuration>

<startup>

<supportedRuntime version="v2.0.50727" />

</startup>

</configuration>

Your Vee 7.5 will now use new .Net.

/Søren
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.01.2011, 10:13
Beitrag: #7
RE: Eigener .NET Instrument Treiber in VEE? .NET 4.0 Win7Pro
Hi and FYI:

gestern habe ich eine Antwort von Agilent bekommen:
"
Thanks for your question, VEE 9.2 is not able to load dll compiled .NET 4 for time being, our team here still working on this, soon will release probably mid of year.
"

und noch ein Tip: VEE 8.0 arbeitet mit .NET 4.0 Bibs zusammen (habe ich mir sagen lassen).
Das muß in die vee.exe.config noch dazu:
<startup><supportedRuntime version="v4.0.30319"/></startup>

hth
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Gehe zu:




Partnerforen: LabVIEWForum.de| DIAdem-Forum.de| Machine-Vision-Forum.de| goMatlab.de| VEEforum.de