C#安装程序无法在Windows XP中启动

时间:2016-04-27 10:20:26

标签: c# installation installer visual-studio-setup-proje


我已经在.NET 4.0中为我的Windows服务创建了一个Visual Studio Installer 安装程序在我的计算机(Windows 10 64位)上运行,在Windows 7(32位)上,但它不能在Windows Xp 32位上运行,安装程序无法启动并显示带有此消息的窗口:

  

"安装尚未完成。安装程序中断   在安装"之前&#34 ;.之前再次启动安装程序   再试一次。选择关闭退出"。

安装了.NET 4.0 没有其他细节,我可以做些什么来调试问题?
非常感谢你的关注

一些LogFile.txt:

  

开始操作13:19:48:安装。 13:19:48操作:DIRCA_CheckFX。
  开始操作13:19:48:DIRCA_CheckFX。
动作结束13:19:48:   DIRCA_CheckFX。返回值3.
13:19:48操作:FatalErrorForm。
  开始操作13:19:48:FatalErrorForm。
  2898.信息VSI_MS_Sans_Serif13.0_0_0,MS Sans Serif,0
  2898.信息VSI_MS_Sans_Serif16.0_1_0,MS Sans Serif,0
调试:错误
2826:控件Line2对话框FatalErrorForm超出了   对话框右边3像素的边界有一个   安装此软件包意外错误。可能有这个问题   包。错误代码是2826.参数是:FatalErrorForm,   Line2,在右边
DEBUG:错误2826:控制BannerBmp   对话框上的FatalErrorForm超出了对话框的边界   向右移动3个像素安装此错误时出现意外错误   包。这个包可能有问题。错误代码是2826   参数是:FatalErrorForm,BannerBmp,在右边   2898.信息VsdDefaultUIFont.524F4245_5254_5341_4C45_534153783400,MS Sans Serif,   0
调试:错误2826:对话框FatalErrorForm上的控件Line1扩展   超出对话框的边界到右边3像素有   安装此程序包时出现意外错误。可能有这个问题   包。错误代码是2826.参数是:FatalErrorForm,   第1行,右边
13:19:48操作:FatalErrorForm。对话框已创建   行动结束了13:19:52:FatalErrorForm。返回值1.行动结束   
13:19:52:安装返回值3。

     

属性(C):VSDNETURLMSG =安装程序需要.NET Framework版本   [1]。安装.NET Framework并再次运行安装程序。你可以获得   来自Web的.NET Framework。现在下载?
属性(C):VSDIISMSG   =安装程序需要Internet Information Server 5.1或更高版本以及Windows XP或更高版本,并且无法在Windows 2000上运行。安装Internet   Information Server或更新的操作系统并运行   安装。
属性(C):= VSDUIANDADVERTISED本公告将   没有安装,因为它可能不可靠。联系您的系统   管理员在基本选项中更改软件包安装。   属性(C):VSDNETMSG =安装程序需要.NET   框架版[1]。安装.NET Framework并重新运行安装程序   属性(C):VSDINVALIDURLMSG =指定的路径' [2]'是   不可用。 Internet Information Server可能未在运行或您正在运行   路径是否存在并重定向到另一台计算机。校验   Internet服务管理器中此虚拟目录的状态   属性(C):VSDVERSIONMSG =无法安装。最新版本   产品已经安装

2 个答案:

答案 0 :(得分:0)

从日志中看,错误看起来与讽刺的错误对话框有关。

我认为由于某种原因,XP上的对话框大约3px太小了。如果您使错误对话框略大,或控件略小,您可以解决问题,或者更有可能获得更好的错误消息。我从日志中提取了相关的位。

  

DEBUG:错误2826:对话框FatalErrorForm上的控件Line2扩展   超出对话框边界的右边3个像素

     

DEBUG:错误2826:对话框中的控件BannerBmp FatalErrorForm扩展   超出对话框边界的右边3个像素

     

DEBUG:错误2826:对话框FatalErrorForm上的控件Line1扩展   超出对话框边界的右边3个像素

我避免像瘟疫那样的VS安装程序,所以如果你不能在那里修改对话框,请尝试使用像InstEdit这样的MSI编辑器(可免费下载)。

答案 1 :(得分:0)

DIRCA_CheckFX是检查.NET运行时的VS设置自定义操作,它失败了,这就是它返回3的原因,其余部分只是抱怨对话框不完美。

您没有说明您正在使用哪个版本的VS设置,但最可能的解释是XP(不受支持)缺少自定义操作代码所需的某些依赖项(或OS API)。或者它使用的搜索运行时不适合XP上安装的运行时。如果你使用古老的VS设置(VS 2003或VS 2005)构建你的设置,它可能有更多的工作机会,因为它们在周围时支持XP。