دوست عزیز ، برای اینکار باید از StrongNaming استفاده کنید.
با استفاده از این روش شما یک کلید دیجیتالی میسازید که یک فایل باینریه و برای کامپایل شدن پروژه حتما باید مسیر اون رو مشخص کرده و به مترجم ویژوال استودیو معرفی کنید.
ابتدا سری به این مقاله بزنید :
http://msdn.microsoft.com/en-us/library/xc31ft41.aspx
باید در command prompt فرمان زیر را وارد کنید :
sn -k sgKey.snk
که فایل کلید رو میسازه
بعد بایک کدی مثل این :
Dim myDll As Assembly = _
Assembly.Load("myDll, Version=1.0.0.1, Culture=neutral, PublicKeyToken=9b35aa32c18d4fb1")
با این روش شما به برنامت کد امنیتی به همراه یک کلید اضافه می کنی
همون PublicKeyToken
بعد کدی مثل کد زیر رو به کتابخونه (dll ) که میخوای امنیتیش کنی اضافه می کنی :
' VB.NET
Imports System.Reflection
<Assembly: AssemblyDelaySign(false)>
<Assembly: AssemblyKeyFile("PublicPrivateKeyFile.snk")>
البته آدرس ها کامل وارد کنید .
روش کار در دات نت 4 کمی تغییر کرده .