目前再做族库项目,已经将WPF界面做好但是由于开始的时候是WPF项目,中间的交互操作需要在Revit中实现,想着通过WPF驱动Revit从而实现两个窗口之间的互通。
一个办法是通用的,使用外部事件实现,这一条路径比较容易
另一个办法是在看jimmy的博客的时候发现有一个案例,通过WCF作为连接驱动两个独立的程序。
关于创建WCF程序可以参照官网
控制台与Revit均需要管理员权限运行,否则将会报错无法接受终结点的错误
我的代码放到GitHub,只修改了关于Revit的部分,如果官方案例无法运行可以对照两个案例互相验证。
通过看前辈的项目,学习到了使用命令行快速定位addin文件,也明白了一些插件无法在常规路径看不到的原因
copy "$(ProjectDir)RevitExternalDemo.addin" "$(AppData)\Autodesk\REVIT\Addins\2016"
copy "$(TargetPath)" "$(AppData)\Autodesk\REVIT\Addins\2016"
copy "$(ProjectDir)RevitExternalDemo.addin" "$(AppData)\Autodesk\REVIT\Addins\2019"
copy "$(TargetPath)" "$(AppData)\Autodesk\REVIT\Addins\2019"