我有一个我正在导入的.NET dll,它似乎工作正常,除非它在VB或.NET程序中运行时,它会查看它运行的命名空间以确定是否命名空间被授权使用该特定功能。
例如,如果我在C#中编写应用程序,它可能看起来像这样:
using The.New.Library;
namespace Knights.Of.The.Round.Table {
public class Knight{
// Some code
private void fight(){
The.New.Library.DoSomething();
}
}
}
它会正常工作,因为命名空间Knights.*
有权使用DoSomething
当我在IronPython中导入时,是否可以告诉dll命名空间实际上是Knights.*
,而不是它实际上是什么 - 或者即使我可以使用正确的文件夹结构,所以它找到了“正确的“命名空间,也可能有用。
谢谢!
答案 0 :(得分:2)
我认为你唯一的选择是制作一个C#包装器,它位于正确的命名空间中,只是转发到库中。
此外,这可能是我听过的最奇怪的“安全”计划,特别是考虑到“失败”是多么容易。任何设计的人都不应该再被允许在计算机附近。