Ich muss die C#-Methode aus dem JMP-Skript aufrufen. Bitte führen<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Ich freue mich darauf, die c#-Methode von JMP aufzurufen. Ich habe versucht, die LoadDll-Funktion zu verwenden. aber es funktioniert nicht. Bitte leiten Sie dazu an. unten ist Code
dll = DLL laden ("C:/Chap23/SampleJMPCall.dll");
dll << DeclareFunction(
"WriteFile",
Alias( "Test" ),
Arg( UnicodeString, "str" ),
Rückgaben( Int32 )
);
result = dll << Test("Hier ist eine Nachricht von JMP.");
Zeige Ergebnis);
dll << UnLoadDLL;
Betreff: Ich muss die C#-Methode aus dem JMP-Skript aufrufen. Bitte führenBei Problemen wie diesem führen Sie am besten "dumpbin -exports dll-Name " auf der DLL, in der Sie versuchen, Funktionen aufzurufen, und stellen Sie sicher, dass die Funktion vorhanden ist und den Namen trägt, den Sie Ihrer Meinung nach haben (der Name wird nicht ergänzt usw.). dumpbin.exe ist Teil von Visual C++.Es kann andere Tools geben, die die Exporte einer DLL auflisten können, ich weiß es nicht.
HTH,
Erich
Betreff: Ich muss die C#-Methode aus dem JMP-Skript aufrufen. Bitte führenIch habe auch angefangen, den gleichen Fehler zu bekommen, während ich die Funktion deklariere.
Im folgenden Skript Fehler markiert mit /*###*/
dll_obj << DeclareFunction(
"WriteFile",
Konvention ( STDCALL ),
Alias( "Test" ),
Arg( UnicodeString, "str" ),
Rückgaben( Int32 )
) /*##****/
irgendeine Idee dazu. Früher bekam ich den Fehler - Fehler beim Initialisieren der Funktion " WriteFile ". Die angegebene Prozedur konnte nicht gefunden werden. .
Bitte vorschlagen.
Betreff: Ich muss die C#-Methode aus dem JMP-Skript aufrufen. Bitte führenLeider unterstützt die DLL-Aufrufschnittstelle in JMP keine Aufruffunktionen in verwaltetem Code (Assemblies).Es kann nur native Codefunktionen aufrufen, die von nativen Code-DLLs exportiert wurden.
Betreff: Ich muss die C#-Methode aus dem JMP-Skript aufrufen. Bitte führenIch habe das gleiche Problem ... kann jemand helfen, uns in die richtige Richtung zu lenken?
Laden DLL funktioniert gut (kein Fehler ins Log geschrieben), aber i bekomme einen Fehler beim Deklarieren .
Der Funktionsname in der DLL, die ich versuche, den Aufruf zu deklarieren, lautet "lookUp()":
dll_obj << DeclareFunction(
"Nachschlagen",
Konvention ( STDCALL ),
Alias ("LU"),
Arg(AnsiString, "NW"),
Gibt zurück ( Int32 ),
);
Ich bekomme folgenden Fehler:
Fehler beim Initialisieren der Funktion "lookUp". Die angegebene Prozedur konnte nicht gefunden werden.
beim Zugriff oder Auswertung von 'DeclareFunction' , Bad Argument( "lookUp" ), DeclareFunction(
"Nachschlagen",
Konvention ( STDCALL ),
Alias( "LU" ),
Arg( AnsiString, "NW" ),
Rückgaben( Int32 )
)
Im folgenden Skript Fehler markiert mit /*###*/
dll_obj << DeclareFunction(
"Nachschlagen",
Konvention ( STDCALL ),
Alias( "LU" ),
Arg( AnsiString, "NW" ),
Rückgaben( Int32 )
) /*##****/
jede Hilfe wird sehr geschätzt!vielen Dank im Voraus