很抱歉标题太长,我尽量简短一些。
我使用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小时前