C#App安装错误 - 全局程序集缓存(GAC)中缺少microsoft.visualstudio.hostingprocess.utilites.sync版本9.0.0.0

时间:2011-04-06 19:28:51

标签: c# winforms windows-installer setup-deployment

背景:我有一个用C#编写的winforms应用程序,它通过从命令行调用第二个完全独立的应用程序ConvertExcelTo.Exe将xlsx文件转换为csv。我正在使用Build Publishing工具从winforms app的解决方案中编译设置/安装文件。

问题:Windows安装程序在使用Windows 7旗舰版,Visual Studio 2010 Premium和Framework 3.5的计算机上完成时没有任何错误,但在没有VS的Windows XP SP3上运行的用户收到以下安装错误消息:

   This application requires microsoft.visualstudio.hostingprocess.utilites.sync 
   version 9.0.0.0 be installed in the Global Assembly Cache (GAC) first.

在我选择的先决条件下:

  • Windows Installer 3.1
  • .Net Framework 3.5
  • 从组件供应商的网站下载先决条件

在应用程序文件下我有:

  • 包含的文件:CCP_Utility.exe,CCP_Utility.exe.config,CCP_Utility.exe.manifest,ConvertExcelTo.exe,ExcelConversion.dll,Icon1.ico,Microsoft.Office.Interop.Excel.dll,Microsoft.Vbe.Interop。 dll,office.dll
  • 排除的文件:CCP_Utility.vshost.exe,CCP_Utility.pdb
  • 先决条件文件:Microsoft.VisualStudio.HostingProcess.Utilities.Sync.dll,stdole.dll

我试过了:

问题:

  • 用户必须下载什么才能完成安装程序而不会出错?
  • 我需要在发布服务器中编辑哪些内容,以便其他用户不会收到此错误?
  • 我应该将任何必备文件设置为包含文件吗?

感谢您的期待! :)

1 个答案:

答案 0 :(得分:2)

我通过向现有项目添加安装和部署项目来解决此问题,以创建一个安装程序,通过右键单击“目标计算机上的文件系统”选择“全局程序集缓存文件夹”

  1. 在现有项目中,转到文件菜单>点击添加>新项目>现在将出现“添加新项目”对话框。

  2. 选择“其他项目类型”并单击“设置和部署”项目,选择“设置项目”,在名称文本框中输入名称项目名称,最后单击“确定”。 Project Types

  3. 新项目出现在解决方案资源管理器中,例如,您已将名称“myEXE”文件显示为具有给定名称。

  4. 右键单击myEXE>去查看 File System

  5. 您可以在3个文件夹下看到“目标计算机上的文件系统”: 应用程序文件夹,用户桌面和&用户的程序菜单。右键单击“目标计算机上的文件系统”,然后选择“全局程序集缓存文件夹” File System on Target Machine

  6. 选择应用程序文件夹并右键单击添加>项目输出>选择主输出

  7. 选择用户的桌面richt单击第二个窗口>单击创建新快捷方式>从Application文件夹中选择输出文件>将文件名从主输出名称更改为myEXE 8.最终构建新项目成功构建项目后,myEXE(安装程序)将出现在Application Debug或Release文件夹中(取决于属性设置)
  8. 我希望这对其他人也有帮助:)