Endlich habe ich das Problem entdeckt. Ich verwende 64-Bit-AutoHotkey, und die DLL, die ich verwenden möchte, ist 32-Bit. Nachdem ich auf 32-Bit AutoHotkey umgestellt hatte, konnte die DLL ohne Probleme gefunden werden.
Warum bekomme ich eine -3 bei einem AutoHotKey DllCall?
Ich versuche, die EHLLAPI von IBM für die Schnittstelle zu ihrem Personal Communicator-Terminalemulator zu verwenden. Ich zeige es auf den Ort der API und gebe den Namen der API als solchen an:
hllapi(ByRef functionCode, ByRef data, ByRef length, ByRef returnCode) { dllfunction := "C:\EHLAPI32.dll\HLLAPI" datatype := "Int *" rvalue := DllCall(dllfunction, datatype, functionCode, "Str", data, datatype, length, datatype, returnCode) If ErrorLevel MsgBox hllapi() returned %ErrorLevel% Return rvalue }
Es gibt jedoch nur -3 zurück und zeigt an:
-3: Auf die angegebene DllFile konnte nicht zugegriffen werden. Wenn für DllFile kein expliziter Pfad angegeben wurde, muss die Datei im PATH oder A_WorkingDir des Systems vorhanden sein. Dieser Fehler kann auch auftreten, wenn dem Benutzer die Berechtigung zum Zugriff auf die Datei fehlt.
Ich habe die Berechtigungen geprüft, und es sollte keine Probleme geben. Ich habe auch versucht, die DLL in das Stammverzeichnis meines Laufwerks C: / zu kopieren, um Zugriffsprobleme zu vermeiden, und das hat sie auch nicht behoben. Warum kann die Datei nicht gefunden werden?
1 Antwort auf die Frage
Verwandte Probleme
-
2
AutoHotkey: Problem beim Zuweisen von CAPS LOCK zu ALT-TAB
-
2
Was ist <x>.dll verwendet für? </x>
-
5
Bitte erläutern Sie die grundlegenden Konzepte einer DLL-Datei und deren Registrierung in Windows
-
2
Alternativen zu AutoHotKey, das mit Synergy funktioniert?
-
6
AutoHotKey entspricht auf dem Mac
-
3
Wie registriert IE ActiveX-Steuerelemente?
-
4
AutoHotkey: Wie kann man der "Calc" -Taste einen Befehl zuweisen?
-
4
AutoHotkey: wie wird der Inhalt der Zwischenablage bei Tastendruck gesendet?
-
2
Warum funktioniert dieses AutoHotkey-Skript nicht?
-
2
AutoHotKey- und VirtuaWin-Fensterwechsel