C# 安装程序未在 Windows Xp 中启动

C# setup doesn't t start in Windows Xp


我已经在 .NET 4.0 中为我的 Windows 服务创建了一个 Visual Studio 安装程序。
安装程序适用于我的计算机(Windows 10 64 位),适用于 Windows 7(32 位)但它不适用于 Windows Xp 32 位,安装程序无法启动并出现 window 和此消息:

"Installation doesn't complete. Installation program interrupted before the installation of " ". Start the installation program again before trying again. Choose Close to exit".

.NET 4.0 已安装。
没有其他详细信息,我可以做些什么来调试问题?
非常感谢您的关注

LogFile.txt 的一部分:

Start operation 13:19:48: INSTALL. 13:19:48 Operation: DIRCA_CheckFX.
Start operation 13:19:48: DIRCA_CheckFX.
Action ended 13:19:48: DIRCA_CheckFX. Return value 3.
13:19:48 Operation: FatalErrorForm.
Start operation 13:19:48: FatalErrorForm.
2898. Information VSI_MS_Sans_Serif13.0_0_0, MS Sans Serif, 0
2898. Information VSI_MS_Sans_Serif16.0_1_0, MS Sans Serif, 0
DEBUG: Error
2826: Control Line2 on dialog FatalErrorForm extends beyond the boundaries of the dialog to the right by 3 pixels There was an unexpected error installing this package. Likely problem with this package. The error code is 2826. The arguments are: FatalErrorForm, Line2, to the right
DEBUG: Error 2826: Control BannerBmp FatalErrorForm on dialog extends beyond the boundaries of the dialog to the right by 3 pixels There was an unexpected error installing this package. Likely problem with this package. The error code is 2826. The arguments are: FatalErrorForm, BannerBmp, to the right 2898. Information VsdDefaultUIFont.524F4245_5254_5341_4C45_534153783400, MS Sans Serif, 0
DEBUG: Error 2826: Control Line1 on dialog FatalErrorForm extends beyond the boundaries of the dialog to the right by 3 pixels There was an unexpected error installing this package. Likely problem with this package. The error code is 2826. The arguments are: FatalErrorForm, Line1, to the right
13:19:48 Operation: FatalErrorForm. Dialog created Action ended
13:19:52: FatalErrorForm. Return Value 1. Action ended
13:19:52: INSTALL. Return value 3.

Property (C): VSDNETURLMSG = Setup requires .NET Framework version [1]. Install .NET Framework and run setup again. You can obtain the .NET Framework from the Web. Downloading now?
Property (C): VSDIISMSG = The installer requires Internet Information Server 5.1 or later, and Windows XP or later, and can not run on Windows 2000. Install Internet Information Server or a more recent operating system and run the installer.
Property (C): = VSDUIANDADVERTISED This announcement will not be installed because it might be unreliable. Contact your system administrator to change the package installation in the basic option. Property (C): VSDNETMSG = The installation program requires the .NET Framework version [1]. Install .NET Framework and rerun the installer.
Property (C): VSDINVALIDURLMSG = The specified path '[2]' is unavailable. Internet Information Server might not be running or you can that the path exists and is redirected to another computer. Check the status of this virtual directory in Internet Services Manager.
Property (C): VSDVERSIONMSG = Unable to install. The latest version of the product is already installed

.

从日志来看,该错误似乎与错误对话框具有讽刺意味。

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

DEBUG: Error 2826: Control Line2 on dialog FatalErrorForm extends beyond the boundaries of the dialog to the right by 3 pixels

DEBUG: Error 2826: Control BannerBmp FatalErrorForm on dialog extends beyond the boundaries of the dialog to the right by 3 pixels

DEBUG: Error 2826: Control Line1 on dialog FatalErrorForm extends beyond the boundaries of the dialog to the right by 3 pixels

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

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

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