एक मूल एपीआई को PInvoke दोस्ताना कैसे बनाया जाए?एक PInvoke दोस्ताना देशी-एपीआई कैसे बनाया जाए?
पी/Invoke here के साथ उपयोग किए जाने वाले देशी कार्यक्रमों को संशोधित करने के तरीके पर कुछ सुझाव दिए गए हैं। लेकिन इससे पहले कि मैं एक देशी कार्यक्रम भी लिखूं, मेरे कार्यक्रम/पुस्तकालय PInvoke दोस्ताना बनाने के लिए मुझे क्या चीजें देखना चाहिए?
सी या सी ++ का उपयोग कर ठीक है।
अद्यतन:
[DLLimport("MyDLL.dll")]
यह करने के लिए संभव है:
अगर मैं एक सी एपीआई लिखते हैं, क्या बातें मैं ऐसा करने के लिए वह यह है कि यह पी/आह्वान करने योग्य निम्नलिखित की तरह सी # सिंटैक्स का उपयोग कर रहे हैं मूल सी ++ कोड/पुस्तकालय के साथ ही?
सारांश/अलग तरीके से व्यक्त कुछ टिप्स की एक पी बनाने के लिए/आह्वान अनुकूल देशी-एपीआई:
+ पैरामीटर देशी प्रकार का होना चाहिए (int, चार *, नाव, ...)
+ कम मापदंडों बेहतर
है + यदि गतिशील मेमोरी आवंटित की जाती है और प्रबंधित कोड पर पास की जाती है, तो सुनिश्चित करें कि "क्लीनर" फ़ंक्शन बनाना सुनिश्चित करें जो 0/ + नमूने और/या यूनिट परीक्षण प्रदान करता है जो बताता है कि एपीआई को .NET
से कैसे कॉल करें + सी ++/सीएलआई रैपर प्रदान करें
"एक समारोह जो देशी प्रकार (int, चार *, नाव, ...) का होना चाहिए संभव के रूप में कुछ पैरामीटर होने चाहिए" मैं इस पर संक्षेप में प्रस्तुत कर सकते हैं: -> मापदंडों देशी प्रकार की होनी चाहिए (int, char *, float, ...) -> कम पैरामीटर बेहतर है -> यदि गतिशील मेमोरी आवंटित की जाती है और प्रबंधित कोड में पास की जाती है, तो सुनिश्चित करें कि "क्लीनर" फ़ंक्शन बनाना है जो पी/आक्रमण –
हां , यह एक अच्छा सारांश है। –