मैं अपने कार्य को एक डीएल में एक्सेस करने का प्रयास कर रहा हूं और इसमें मूल्य को पूर्णांक के रूप में पास कर रहा हूं। लेकिन मैं के रूप में एक ValueError हो रही है:मेरे फ़ंक्शन में बहुत सारे तर्क - पायथन
Procedure probably called with too many arguments (4 bytes in excess)
मेरे अजगर .py स्क्रिप्ट के रूप में नीचे है:
func2.restype = c_int
func2.argtypes = [c_int]
func2(3)
...
dll में मेरे वास्तविक समारोह की तरह बस एक साधारण कार्य है :
int DLLfun2(int argtest) { return argtest + 1; };
...
एक साधारण समस्या की तरह लग रहा है, लेकिन मुझे लगता है कि मैं कुछ खो रहा हूँ। कृप्या सहायता करे।
चीयर्स।
दुर्भाग्यवश, एक ही त्रुटि को छोड़ दिया। – Neophile
@ Nerds.Dont.Swear: आपके डीएल में कॉलिंग कन्वेंशन का उपयोग कर रहे हैं (cdecl/stdcall) जैसा कि मैंने अपने संपादन में उल्लेख किया है। –
मेरे मामले में, मैं अपनी लाइब्रेरी लोड करने के लिए विंडल का उपयोग कर रहा हूं। जिस तरह से मैं अपना काम कॉल करने की कोशिश कर रहा हूं उससे अलग कैसे होगा? – Neophile