Suchergebnisse

Suchergebnisse 1-10 von insgesamt 10.

  • Benutzer-Avatarbild

    Guten Abend liebe Forum-Gemeinde! Ich hab ein USB-Gerät welches einfach Zählwerte aufnimmt. Diese möchte ich in meinem Programm auslesen. Der Hersteller des Gerätes hat den kompletten Sourecode mitgeliefert. Daher habe ich die .h-Datei geöffnet und entsprechende Declare-Lib anweisungen in VB geschrieben. Ich kann zwar auch auf die DLL zugreifen ohne dass das Programm abstürzt, bekomme aber als Rückmeldung der Init-Funktion -5 statt -1. Was mich etwas verwirrt ist die deklaration PASCAL in dem .h…

  • Benutzer-Avatarbild

    Hallo! Danke für die schnelle Antwort! Diesen Beitrag kenn ich und hab den auch genau durchgelesen. ByRef hab ich verwendet, da über diese Variablen Werte zurückgegeben werden. Aber ich werds nochmal Umschreiben und testen. Gruß UPDATE Ich hab die Parameter jetzt umgeschrieben. Hab aber immer noch das Problem dass der Zurückgegebene Wert -5 und nicht -1 ist. Siehe Bilder Gruß

  • Benutzer-Avatarbild

    Guten Morgen! Danke erstmal für die schnellen Hinweise. DLL-tut hab ich gemacht. Das FAR PASCAL hat mich die ganze Zeit verwirrt bis ich dahinter gekommen bin, dass das für VB keine Auswirkung hat sondern nur für den Compiler der DLL... bezüglich Verstehen am Beispiel String übergeben: Ein leerer Zeiger wird erzeugt und an die Funktion übergeben. Hier kann die DLL-Funktion einen Wert hineinspeichern. Ein zweiter Zeiger wird erzeugt. Dieser Zeiger weiß wo die Marshal-Funktion das Ergebnis vom Umw…

  • Benutzer-Avatarbild

    Hallo! Danke RodFromGermany für die erklärung! Jetzt ist einiges klarer. Hab mein Programm auch umgeschrieben laut dem Beispiel. Kann jetzt mit der DLL kommunizieren und ich krieg auch Pointer zurück. Allerding kann ich keinen Text auslesen (ANSI). Könnte es sein dass es sich um UNICODE handelt und deshalb nicht funktioniert? Wenn ja wie bzw. wo im Treiber ist das definiert. Wenn nein woran kanns sonst noch liegen???? Danke erstmal!!! Gruß Wolfgang

  • Benutzer-Avatarbild

    Hallo! Anbei ein teil meines Quellcodes. Diese vier Aufrufe nutze ich im Moment. Die anderen hab ich noch nicht angepasst solang es nicht richtig geht. VB.NET-Quellcode (17 Zeilen) Hier noch das auslesen: VB.NET-Quellcode (18 Zeilen) Hier bekomm ich als Rückmeldung einen Pointer geliefert. Aber das ptrToStringAnsi liefert nix Gruß wolfgang

  • Benutzer-Avatarbild

    Ich hab meine bisherigen Aufrufe an das Beispiel von RodfromGermany angelehnt. So... jetz bin ich richtig verwirrt!!! Hab mal Dein Beispiel auf VB umgemodelt... Dann gibts erstmal eine Access violation. Hab dann den String nicht als Stringbuilder sonder als String angegeben... Immer noch fehler. Erst als ich dann statt long integer verwendet hab ging der Aufruf. Allerdings wieder mit leerem string. VB.NET-Quellcode (3 Zeilen) Ich werd noch wahnsinnig mit dem scheiß. Achja... habs ja zuerst mit l…

  • Benutzer-Avatarbild

    Jetz ruf ich den Code so auf und es stürzt nix ab. VB.NET-Quellcode (4 Zeilen) und so hab ich den dllimport umgebaut: VB.NET-Quellcode (3 Zeilen) Hab Dein Beispiel mit dem Snippetconverter übersetzt und angepasst. Aber dann gabs beim Aufruf eine access violation. Liegst evtl. am VS-Express??? Ich denke der Aufruf is für jemand der Ahnung hat nix besonderes. Ich steh aber scheinbar irgendwie auf dem Schlauch. Mach jetz schon 1,5 Wochen da dran rum aus der scheiß DLL werte auszulesen. Hab auch mit…

  • Benutzer-Avatarbild

    Die Datentypen sind mir klar... stand auch so bei MSDN dass das long in c als integer(int32) umzusetzen ist... Habs jetz nochmal so gemach: VB.NET-Quellcode (3 Zeilen) und den Aufruf so: VB.NET-Quellcode (4 Zeilen) ist der Aufruf bzw. die verwendung von b (.tostring) so richtig???

  • Benutzer-Avatarbild

    Hey Leute Ihr seid der Hit.... Scheinbar geht das wirklich so... Ich muß jetz das ganze noch anpassen... Geb dann rückmeldung. Gruß Wolfgang

  • Benutzer-Avatarbild

    Hat ansich funktioniert. Allerdings war die Hardware nix. Somit alles Verworfen und Arduino verwendet. Trotzdem Danke für die Hilfe