简体   繁体   中英

C# setup doesn't t start in Windows Xp


i've created a Visual Studio Installer in .NET 4.0 for my Windows Service.
The installer works on my computer (Windows 10 64 bit), on Windows 7(32 bit) but it doesn't work on Windows Xp 32 bit, the installer doesn't start and appears a window with this message:

"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 is installed.
There is no other details, what can i do for debugging the problem?
Thank you very much for your attention

Some chunk of 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

.

From the log, the error looks like it is to do with the error dialog ironically.

I think that the dialog is about 3px too small on XP for some reason. If you make the error dialog slightly larger, or the controls slightly smaller, you may fix the issue, or more likely, get a better error message. I've extracted the relevant bits from the log.

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

I avoid VS Installer like the plague, so if you can't modify the dialog in there, try using an MSI Editor like InstEdit (freely downloadable).

DIRCA_CheckFX is the VS setup custom action that checks for the .NET Runtime, and it's failing, that's why it returns 3, and the rest of it is just whining about the dialogs not being perfect.

You didn't say which version of VS setup you're using, but the most likely explanation is that XP (which is unsupported) is missing some dependency (or OS API) that the custom action code needs. Or it's using a search for the runtime that is inappropriate for a runtime installed on XP. If you built your setup with an ancient VS setup (VS 2003 or VS 2005) it might have more chance of working because XP was supported when they were around.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM