2010-11-11 62 views
0

后保留的文件夹,我想创建使用维克斯那份某个文件的文件夹 安装程序“C:\用户\你的用户\文件 \ Visual Studio 2010中\加载项\”维克斯 - 卸载

当我写了下面的代码:

<Directory Id="TARGETDIR" Name="SourceDir"> 
    <Directory Id="PersonalFolder"> 
     <Directory Id="VS2010" Name="Visual Studio 2010"> 
     <Directory Id="VSAddins" Name="Addins"> 
      <Component Id="VSAddin" Guid="Some Guid"> 
      <File Id="MyAddin.Addin" Name="MyAddin.Addin" DiskId="1" Source="..\Resources\" /> 
      <RegistryValue Root='HKCU' Key='SOFTWARE\ABCD\MY_Addins' 
          Type='string' Value='MY_Addin' 
          KeyPath='yes' /> 
      </Component> 
     </Directory> 

我得到以下编译错误:

ICE64:目录VS2010是在用户配置文件,但没有在RemoveFile表中列出。

我该如何克服这个错误?

我知道,我可以添加以下代码“组件”范围内:

<RemoveFolder Id="VS2010" On='uninstall'/> 

但我不想卸载删除我没有创建文件夹(尤其是在Visual Studio 2010一个...)

感谢你的帮助, 马克西姆

回答

-1

我可以问你为什么把它在用户的个人资料,而不是安装它为所有用户的?我发现每个用户组件在路上创建各种服务问题。相反,对于我的IsWiX项目,我将AddIn部署到C:\ ProgramData \ Microsoft \ MSEnvShared \ AddIns。

您可以在IsWiXAddInMM.wxs

+0

谢谢看看完整的源代码,我不认为这种选择的确。 UsersDocuments \ Visual Studio 2010 \ Templates \ ProjectTemplates怎么样? 我需要在那里复制一些文件。 – Maxim 2010-11-11 13:31:49

+0

看看WiX VSExtension。他们有一些预定义的搜索,例如VS90_ITEMTEMPLATES_DIR。就我个人而言,我有一个不同的安装程序,目标是2005/2008,我将文件放在主installdir中,然后使用CopyFile元素将文件复制到VS目录(如果存在)。然后我使用EXE自定义操作来调用devenv/setup(如果它存在)。 – 2010-11-11 17:15:45