保护DLL不用于我自己以外的其他项目

时间:2011-04-14 08:43:51

标签: c# vb.net dll

我要构建一个大型项目,并希望为它创建多个库(DLL)。我不想将它们全部合并到一个EXE中,但是想要使用单独的DLL文件。

我不希望其他人使用这些DLL,因此这些DLL应该受到保护,以便它们只能在我自己的项目中使用。

我正在考虑在New()过程中使用某种密码,但这对共享类不起作用。

我想到的其他解决方案:是否可以检查调用程序集是否具有与DLL相同的强名称?

这些解决方案只是我的一个想法。我不知道这些是否有效,并不是说其中一条是可行的。

实现这一目标的最佳方法是什么?

BTW:我还使用混淆器来保护我的代码。

2 个答案:

答案 0 :(得分:4)

您可能希望查看System.ComponentModel.LicenseProvider。您可以使用您想要的任何身份验证方法来查看它们是否具有dll的有效副本。

答案 1 :(得分:-1)

Dim E.dll.Com.proc.ecription.pass = "0.0.13",bit
If user.intrude.falsepasscode then
process.break (intrude,process)
Use.facilitator 0.492
End if
If 029302 = 029302 Then
Returnt.kill.me.process
msgbox("Var dll cannot be used because its protected for sole use in VBEXplor.exe")

在代码编辑中将此代码粘贴到dll中,它应该可以工作!