कुछ हुप्स के माध्यम से कूदने के बिना 100% पूरी तरह असंभव है।
.NET का उपयोग करने के लाभों में से एक प्रतिबिंब का उपयोग करने की क्षमता है, जो एक असेंबली को लोड करता है और इसका निरीक्षण करता है, गतिशील रूप से कॉल विधियों आदि। यह वही है जो VB.NET और F # के बीच इंटरऑप बनाता है।
हालांकि, चूंकि आपका कोड एक प्रबंधित असेंबली में है जिसका अर्थ है कि कोई भी आपके कोड का संदर्भ जोड़ सकता है और अपनी सार्वजनिक विधियों का आह्वान कर सकता है या प्रतिबिंब का उपयोग करके इसे लोड कर सकता है और निजी तरीकों को कॉल कर सकता है । भले ही आप अपने कोड को 'खराब कर दें', फिर भी लोग प्रतिबिंब का उपयोग करने और आपके कोड का आह्वान करने में सक्षम होंगे। हालांकि, चूंकि सभी नामों को कुछ भी करने के लिए मुखौटा किया जाएगा, यह बेहद मुश्किल है।
यदि आपको अपने .NET कोड को ऐसे फैशन में शिप करना होगा जो अन्य लोगों को इसे निष्पादित करने से रोकता है, तो आप अपने बाइनरी को एनजीएनएन (x86 पर संकलित कर सकते हैं) और उन बाइनरी को शिप कर सकते हैं।
मैं आपकी स्थिति के विनिर्देशों को नहीं जानता, लेकिन obfuscation पर्याप्त अच्छा होना चाहिए।