Frage

Ich versuche, RFID Contactless Smart Card (T8/D8 -Serie) für mein endgültiges Projekt zu verwenden. Aber ich habe ein Problem mit der DCRF32.dll -Datei in meinem Formular.

Es gibt 3 Dinge im RFID -Paket (daher: 12 Smartcards, einen USB -Anschluss und eine Treiber -CD)

In der Treiber -CD gibt es in einer Programmiersprache so viele Beispielprojekte, außer VB.NET habe ich sie nacheinander ausprobiert, und das ist Arbeit.

Es gibt einen Ordner namens "Win32-DLL", in dem 3 Dateien im Inneren enthalten sind (dcrf32.dll, dcrf32.h, dcrf32.lib). Ich muss sie alle in jedem Beispielprogramm kopieren, das ich verwenden möchte.Image

Sie haben auch ein Beispiel in VB.6, wenn ich versuche, es auszuführen, überhaupt keine Probleme. Es klappt. (Ich stelle auch diese 3 DCRF -Dateien in die %windows%\System32 Mappe).

Wenn ich jedoch versuche, mein eigenes Projekt mit Visual Studio 2010 zu erstellen und die VB.NET -Programmiersprache zu verwenden, habe ich ein Problem, das die DCRF32.dll -Datei aufzurufen.

Ich migriere den VB6 -Quellcode in VB.NET, er hat einen Fehler, wenn die Funktion der DC_init Parameter angibt. Kann mir jemand helfen? Wo ist meine Schuld?

Hier sind die Links, die für die Lösung meiner Probleme wichtig sind:Hier

Ich brauche nur Hilfe bei meinem ersten Knopf, und Sie müssen mir nicht mit dem anderen Knopf wie im VB 6 -Beispielprogramm helfen.

Ich möchte nur wissen, wie man die DCRF32 -Dateien verbindet und warum es in VB.NET Fehler hat, aber in VB 6 funktioniert es ordnungsgemäß.

Ich frage mich es.

War es hilfreich?

Lösung

Das Problem, das Sie haben, ist es, Ihre Deklarfunktionen zu befassen, und die Tatsache, dass sich die Größe von Ganzzahlen und Longs usw. in VB.NET ändert. Schau dir das an Verknüpfung und dieses Codeprojekt Artikel Bei Verwendung von Pinvoke.

dh eine Ganzzahl in VB6 ist eine kurze in VB.NET, ein langer in VB6 ist eine Ganzzahl in VB.NET. Der % in Ihren Erklärungen ist eine VB6 -Ganzzahl und wird kurz.

Declare Auto Function dc_init Lib "dcrf32.dll" (ByVal port as Short, ByVal baud As Integer) As Integer
Declare Auto Function dc_exit Lib "dcrf32.dll" (ByVal icdev As Integer) As Short
Declare Auto Function dc_request Lib "dcrf32.dll" (ByVal icdev As Integer, ByVal mode as Short, tagtype As Integer) As Short
Declare Auto Function dc_anticoll Lib "dcrf32.dll" (ByVal icdev As Integer, ByVal bcnt as Short, snr As Integer) As Short

...
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top