有没有办法在visual studio的设计时加载非托管dll?
我知道我总是可以将DLL放在" System32"文件夹或将Dll路径添加到" PATH"变量直接加载它。但我不想这样做。我想从Application的ExecutablePath加载它。 DLL实际上拥有一个控件。
任何人都可以帮我解决这个问题吗?
谢谢, WritZ
答案 0 :(得分:0)
我想从Application的ExecutablePath加载它
那是行不通的,还没有。除了Windows之外,设计师保证在您从源代码管理中办理登机手续或清理项目时失败。
此代码在Visual Studio的上下文中运行,因此Windows DLL搜索规则基于其安装位置。目前尚不清楚这是否是pinvoke代码失败或者你的程序集是否隐含依赖于DLL。您可以对pinvoke执行某些操作,可以通过测试DesignMode属性来阻止代码运行。处理隐式依赖的唯一方法是帮助Windows找到DLL。搜索路径上的目录。前进的唯一方法是将代码拆分为仅在设计模式下真正重要的部分,以便DesignMode再次变得有用。