Próbuję uzyskać dostęp do mojej funkcji w bibliotece dll i przekazać wartość jako liczbę całkowitą w nim. Ale ja dostaję ValueError jak:Zbyt wiele argumentów w mojej funkcji - Python
Procedure probably called with too many arguments (4 bytes in excess)
mój skrypt Pythona .py jest jak poniżej:
func2.restype = c_int
func2.argtypes = [c_int]
func2(3)
...
Moja rzeczywista funkcja w DLL jest tylko prosta czynność jak :
int DLLfun2(int argtest) { return argtest + 1; };
...
Wygląda na prosty problem, ale domyślam się, że czegoś mi brakuje. Uprzejma pomoc.
Pozdrawiam.
Udało się, niestety ten sam błąd. – Neophile
@ Nerds.Dont.Swear: spójrz na konwencję wywołującą, której używasz (cdecl/stdcall) w swojej bibliotece DLL, tak jak wspominałem w mojej edycji. –
W moim przypadku używam windll do załadowania mojej biblioteki. Czym różni się od sposobu, w jaki próbuję nazwać moją funkcję? – Neophile