手动安装Revit 2011外接程序的过程:
使用Visual 2008安装项目,我可以轻松地完成第一步。对于第二步,我可能需要使用自定义操作来创建xml .addin文件。我不知道如何将信息(输出位置)从安装程序传递到自定义操作。
发布于 2010-12-02 21:03:58
打开自定义操作编辑器,您将在其中看到安装或卸载每个阶段的文件夹(安装、提交、回滚、卸载)。在每个文件夹下,您将添加对自定义操作的引用。
选择其中一个自定义操作并查看属性。将有一个名为CustomActionData的属性,在这里您可以将值从安装程序映射到自定义操作。
此属性的格式示例如下所示。
/installLocation="[ProgramFilesFolder][ProductName]" /setting1="[SETTING1]"
然后,在您的自定义操作类中,您可以编写以下代码来访问这个值
string path = this.Context.Parameters["installLocation"];
string setting1 = this.Context.Parameters["setting1"];此外,在编写Revit外接程序文件时,不应该引用绝对路径。相反,您可以执行以下操作来查找AppData文件夹,而不管使用的是什么操作系统。
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;
}发布于 2010-12-03 08:19:38
谢谢你的回答埃里克。我已经解决了这个问题。
关于自定义操作,我几乎是按照您描述的那样做的。
我的自定义操作的安装程序类也有问题。我需要把它放在单独的项目,否则我得到1001错误在安装。
至于外接程序文件,我使用RevitAddinUtility确定了它的路径。RevitAddInUtility.dll是一个.NET实用程序类程序集,您可以在Revit文件夹中找到它。它为您提供了创建外接程序文件和确定Revit外接程序文件夹路径的方法。
再次感谢你的回答。
https://stackoverflow.com/questions/4281041
复制相似问题