首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Visual 2008中创建Revit外接程序Windows安装程序

如何在Visual 2008中创建Revit外接程序Windows安装程序
EN

Stack Overflow用户
提问于 2010-11-25 21:43:15
回答 2查看 1.9K关注 0票数 0

手动安装Revit 2011外接程序的过程:

  1. 将外接程序DLL放在所需的位置,例如C:Program Files\RevitAddin\RvtAddin.dll
  2. 创建包含外接程序(位置、完整类名等)信息的.addin xml文件。这个".addin“文件必须放置在以下位置之一:
    • Windows 7: C:\ProgramData\Autodesk\Revit\Addins\2011\
    • 对于Windows : C:\Documents和Settings\所有用户\应用程序数据\Autodesk\Revit\Addins\2011\

使用Visual 2008安装项目,我可以轻松地完成第一步。对于第二步,我可能需要使用自定义操作来创建xml .addin文件。我不知道如何将信息(输出位置)从安装程序传递到自定义操作。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-12-02 21:03:58

打开自定义操作编辑器,您将在其中看到安装或卸载每个阶段的文件夹(安装、提交、回滚、卸载)。在每个文件夹下,您将添加对自定义操作的引用。

选择其中一个自定义操作并查看属性。将有一个名为CustomActionData的属性,在这里您可以将值从安装程序映射到自定义操作。

此属性的格式示例如下所示。

/installLocation="[ProgramFilesFolder][ProductName]" /setting1="[SETTING1]"

然后,在您的自定义操作类中,您可以编写以下代码来访问这个值

代码语言:javascript
复制
string path = this.Context.Parameters["installLocation"];
string setting1 = this.Context.Parameters["setting1"];

此外,在编写Revit外接程序文件时,不应该引用绝对路径。相反,您可以执行以下操作来查找AppData文件夹,而不管使用的是什么操作系统。

代码语言:javascript
复制
private string AddInManifestPath()
{
    string appdata = System.Environment.GetFolderPath(System.Environment.SpecialFolder.CommonApplicationData);
    string path = System.IO.Path.Combine(appdata, @"Autodesk\REVIT\Addins\2011\DVAMC.addin");
    return path;
}
票数 0
EN

Stack Overflow用户

发布于 2010-12-03 08:19:38

谢谢你的回答埃里克。我已经解决了这个问题。

关于自定义操作,我几乎是按照您描述的那样做的。

我的自定义操作的安装程序类也有问题。我需要把它放在单独的项目,否则我得到1001错误在安装。

至于外接程序文件,我使用RevitAddinUtility确定了它的路径。RevitAddInUtility.dll是一个.NET实用程序类程序集,您可以在Revit文件夹中找到它。它为您提供了创建外接程序文件和确定Revit外接程序文件夹路径的方法。

再次感谢你的回答。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4281041

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档