从我的GitHub下载的Revit插件DLL不起作用。在我的机器加载中编译的那些很好



很抱歉标题太长,我尽量简短一些。

我使用C#和Visual Studio为Revit 2020开发了一组IExternalCommand。还有一个用于功能区的IExternalApplication以包含它们。它们在我的电脑里工作得很有魅力。我正在使用GitHub来存储项目,我正在测试另一个人需要做什么才能安装我的插件:

  • 从GitHub下载DLL到我的计算机中
  • 正在将必要的.dlls和.addin文件复制到Revit加载项文件夹%programdata%/Autodesk/中的一个文件夹中。。。等等
  • 我打开Revit。。。令我惊讶的是,我得到了以下错误:

System.IO.FileLoadException

无法加载文件或程序集'file:///C:\ProgrammData\Autodesk\ApplicationPlugin。。。\"ArpRibbon.dll"或其依赖项之一。不支持操作。(HRESULT:0x80131515的异常(

但是如果我使用在我的机器中本地编译的DLL。。。它有效!这怎么可能?有人知道我做错了什么吗?我一直在搜索,但找不到有类似问题的人。

非常感谢。

As from comment:

只是一个想法,但文件是从互联网加载的。也许windows安全机制开始发挥作用。你能用资源管理器浏览到文件并右键单击查看其属性吗?可能存在一些关于由于外部dll而禁用访问的安全详细信息。

事实确实如此。

您可以通过将Stefan的评论复制到答案中并确认它解决了问题来将问题标记为已回答:

只是一个想法,但文件是从互联网加载的。也许windows安全机制开始发挥作用。你能用资源管理器浏览到文件并右键单击查看其属性吗?可能存在一些关于由于外部dll而禁用访问的安全详细信息。–Stefan 17小时前

感谢你们两位的快速回复。这个问题正是@Stefan所建议的。属性文件中有一条安全消息说:"这个文件来自另一台计算机,可能会被阻止以帮助保护这台计算机。"然后是一个"取消阻止"复选框。我取消了dll的阻止,它起了作用。就我而言,我是用谷歌Chrome下载这些文件的。再次感谢!我如何将问题标记为已回答?–angelrps 4小时前

最新更新