这是本文档旧的修订版!
Revit插件问题
Revit的二次开发,跟版本关系比较大,这里Revit用的是2019版本,vs用的是2017版本,开发用的语言是C#,用到的.net框架是4.7.1版.请特别注意版本!版本不同时,会碰到小问题,但总体思路是一致的。
操作系统:Windows10 64位版本
Revit2019版本,请到Autodesk下载即可
Visual Studio 2017版本,请到微软公司下载即可,注意vs安装时,要安装C#
特别注意:Revit官方要求,2019Revit要匹配的.Net框架版本是4.7,在这里我只找到了4.7.1,大版本号一致,最后看起来没问题。
-
安装插件管理,只有安装了插件管理,才会在附加模块中多出一个外部工具选项。如果已经安装了RevitSDK,它包含了插件管理器。
配置插件管理器,将dll和addin文件拷贝到Revit插件目录下,并修改addin文件的具体内容,比较烦杂,
具体操作
-
终于到了写HelloWorld
vs2017中新建项目,在模板中选择Visual C#,和 类库(.Net Framework) ,注意这里要选择正确。
在解决方案管理其中,添加引用。在引用管理器中选择“浏览”,在Revit安装目录下找到RevitAPI.dll和RevitAPIUI.dll。
上述两个引用的“复制到本地”属性改为False,我们不需要拷贝它们只要引用就好。
把代码改成如下:
using Autodesk.Revit.DB;
using Autodesk.Revit.UI;
using Autodesk.Revit.Attributes;
namespace revit_plus1
{
[TransactionAttribute(TransactionMode.Manual)]
//[Transaction(TransactionMode.Manual)]
public class Class1 : IExternalCommand
{
public Result Execute(ExternalCommandData commandData,ref string message,ElementSet elements)
{
TaskDialog.Show("Revit", "HelloWorld!");
return Autodesk.Revit.UI.Result.Succeeded;
}
}
}
注意修改平台类型,在VS的 “生成” → “配置管理器” → “活动解决方案平台” 中增加 “X86”平台