Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
710 views
in Technique[技术] by (71.8m points)

visual studio 2017 - Wix Minimal UI doesnt show up

I'm trying to create a simple installer with Wix, but the Windows Installer doesn't show up. So I've tried the basics, which is:

  1. Add Wix v3 Setup project
  2. Fill in Manufacturer
  3. Build and open the .msi It shows a popup with "Title" Preparing to install
  4. Add reference WixUIExtension
  5. Add <UIRef Id="WixUI_Minimal" /> so should it should show the UI
  6. Build and open the .msi Nothing appears and I have to kill the Windows Installer via Task Manager

What could be wrong?

Answer to Stein:

Prevalence: Do other MSI files work without issues?

  • The built-in VS Setup Wizard builds a .msi which works.

Timeout: How long do you wait for the MSI to initialize?

  • 10 minutes

Source: Maybe post your whole source.

<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Product Id="*" Name="MinimalTester" Language="1033" Version="1.0.0.0" Manufacturer="MinimalTester" UpgradeCode="795294d8-45b1-4110-a80c-4a593e86bc68">
    <Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" />

    <MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." />
  <MediaTemplate EmbedCab="yes" />
  <UIRef Id="WixUI_Mondo" />
  <WixVariable Id="WixUILicenseRtf" Value="TestLicenseAgreement.rtf" />

    <Feature Id="ProductFeature" Title="MinimalTester.Installer" Level="1">
        <ComponentGroupRef Id="ProductComponents" />
    </Feature>
</Product>

<Fragment>
    <Directory Id="TARGETDIR" Name="SourceDir">
        <Directory Id="ProgramFilesFolder">
            <Directory Id="INSTALLFOLDER" Name="MinimalTester" />
        </Directory>
    </Directory>
</Fragment>

<Fragment>
    <ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">
      <Component Feature="ProductFeature">
        <File Source="C:SourceTestAppinDebugTestApp.exe" />
      </Component>
    </ComponentGroup>
</Fragment>

Logging: Always make a log file for your installation session to debug.

    === Verbose logging started: 10/12/2018  08:43:43  Build type: SHIP UNICODE 5.00.10011.00  Calling process: C:WINDOWSsystem32msiexec.exe ===
MSI (c) (EC:A0) [08:43:43:124]: Font created.  Charset: Req=0, Ret=0, Font: Req=MS Shell Dlg, Ret=MS Shell Dlg

MSI (c) (EC:A0) [08:43:43:125]: Font created.  Charset: Req=0, Ret=0, Font: Req=MS Shell Dlg, Ret=MS Shell Dlg

MSI (c) (EC:7C) [08:43:43:158]: Resetting cached policy values
MSI (c) (EC:7C) [08:43:43:159]: Machine policy value 'Debug' is 0
MSI (c) (EC:7C) [08:43:43:159]: ******* RunEngine:
           ******* Product: TestApp.Installer.msi
       ******* Action: 
       ******* CommandLine: **********
MSI (c) (EC:7C) [08:43:43:166]: Machine policy value 'DisableUserInstalls' is 0
MSI (c) (EC:7C) [08:43:43:227]: Note: 1: 1402 2: HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionPoliciesExplorer 3: 2 
MSI (c) (EC:7C) [08:43:43:228]: SOFTWARE RESTRICTION POLICY: Verifying package --> 'C:SourceTestAppinDebugTestApp.Installer.msi' against software restriction policy
MSI (c) (EC:7C) [08:43:43:229]: Note: 1: 2262 2: DigitalSignature 3: -2147287038 
MSI (c) (EC:7C) [08:43:43:229]: SOFTWARE RESTRICTION POLICY: C:SourceTestAppinDebugTestApp.Installer.msi is not digitally signed
MSI (c) (EC:7C) [08:43:43:231]: SOFTWARE RESTRICTION POLICY: C:SourceTestAppinDebugTestApp.Installer.msi is permitted to run at the 'unrestricted' authorization level.
MSI (c) (EC:7C) [08:43:43:237]: Cloaking enabled.
MSI (c) (EC:7C) [08:43:43:237]: Attempting to enable all disabled privileges before calling Install on Server
MSI (c) (EC:7C) [08:43:43:241]: End dialog not enabled
MSI (c) (EC:7C) [08:43:43:241]: Original package ==> C:SourceTestAppinDebugTestApp.Installer.msi
MSI (c) (EC:7C) [08:43:43:241]: Package we're running from ==> C:SourceTestAppinDebugTestApp.Installer.msi
MSI (c) (EC:7C) [08:43:43:243]: APPCOMPAT: Compatibility mode property overrides found.
MSI (c) (EC:7C) [08:43:43:244]: APPCOMPAT: looking for appcompat database entry with ProductCode '{A401E2B5-DBD1-41AC-8F84-BC9EAF39E728}'.
MSI (c) (EC:7C) [08:43:43:244]: APPCOMPAT: no matching ProductCode found in database.
MSI (c) (EC:7C) [08:43:43:253]: MSCOREE not loaded loading copy from system32
MSI (c) (EC:7C) [08:43:43:256]: Machine policy value 'TransformsSecure' is 0
MSI (c) (EC:7C) [08:43:43:256]: User policy value 'TransformsAtSource' is 0
MSI (c) (EC:7C) [08:43:43:256]: Note: 1: 2205 2:  3: MsiFileHash 
MSI (c) (EC:7C) [08:43:43:256]: Machine policy value 'DisablePatch' is 0
MSI (c) (EC:7C) [08:43:43:256]: Machine policy value 'AllowLockdownPatch' is 0
MSI (c) (EC:7C) [08:43:43:257]: Machine policy value 'DisableMsi' is 0
MSI (c) (EC:7C) [08:43:43:257]: Machine policy value 'AlwaysInstallElevated' is 0
MSI (c) (EC:7C) [08:43:43:257]: User policy value 'AlwaysInstallElevated' is 0
MSI (c) (EC:7C) [08:43:43:257]: Running product '{A401E2B5-DBD1-41AC-8F84-BC9EAF39E728}' with user privileges: It's not assigned.
MSI (c) (EC:7C) [08:43:43:257]: Machine policy value 'DisableLUAPatching' is 0
MSI (c) (EC:7C) [08:43:43:257]: Machine policy value 'DisableFlyWeightPatching' is 0
MSI (c) (EC:7C) [08:43:43:257]: APPCOMPAT: looking for appcompat database entry with ProductCode '{A401E2B5-DBD1-41AC-8F84-BC9EAF39E728}'.
MSI (c) (EC:7C) [08:43:43:257]: APPCOMPAT: no matching ProductCode found in database.
MSI (c) (EC:7C) [08:43:43:257]: Transforms are not secure.
MSI (c) (EC:7C) [08:43:43:257]: PROPERTY CHANGE: Adding MsiLogFileLocation property. Its value is 'C:SourceTestAppinDebugYour.log'.
MSI (c) (EC:7C) [08:43:43:257]: Command Line: CURRENTDIRECTORY=C:SourceTestAppinDebug CLIENTUILEVEL=0 CLIENTPROCESSID=18924 
MSI (c) (EC:7C) [08:43:43:257]: PROPERTY CHANGE: Adding PackageCode property. Its value is '{60067773-7475-4FB5-B5D0-26E6934E64E2}'.
MSI (c) (EC:7C) [08:43:43:257]: Product Code passed to Engine.Initialize:           ''
MSI (c) (EC:7C) [08:43:43:257]: Product Code from property table before transforms: '{A401E2B5-DBD1-41AC-8F84-BC9EAF39E728}'
MSI (c) (EC:7C) [08:43:43:257]: Product Code from property table after transforms:  '{A401E2B5-DBD1-41AC-8F84-BC9EAF39E728}'
MSI (c) (EC:7C) [08:43:43:257]: Product not registered: beginning first-time install
MSI (c) (EC:7C) [08:43:43:257]: PROPERTY CHANGE: Adding ProductState property. Its value is '-1'.
MSI (c) (EC:7C) [08:43:43:257]: Entering CMsiConfigurationManager::SetLastUsedSource.
MSI (c) (EC:7C) [08:43:43:257]: User policy value 'SearchOrder' is 'nmu'
MSI (c) (EC:7C) [08:43:43:257]: Adding new sources is allowed.
MSI (c) (EC:7C) [08:43:43:257]: PROPERTY CHANGE: Adding PackagecodeChanging property. Its value is '1'.
MSI (c) (EC:7C) [08:43:43:258]: Package name extracted from package path: 'TestApp.Installer.msi'
MSI (c) (EC:7C) [08:43:43:258]: Package to be registered: 'TestApp.Installer.msi'
MSI (c) (EC:7C) [08:43:43:258]: Note: 1: 2205 2:  3: Error 
MSI (c) (EC:7C) [08:43:43:258]: Note: 1: 2262 2: AdminProperties 3: -2147287038 
MSI (c) (EC:7C) [08:43:43:258]: Machine policy value 'AlwaysInstallElevated' is 0
MSI (c) (EC:7C) [08:43:43:258]: User policy value 'AlwaysInstallElevated' is 0
MSI (c) (EC:7C) [08:43:43:258]: Running product '{A401E2B5-DBD1-41AC-8F84-BC9EAF39E728}' with user privileges: It's not assigned.
MSI (c) (EC:7C) [08:43:43:258]: PROPERTY CHANGE: Adding CURRENTDIRECTORY property. Its value is 'C:SourceTestAppinDebug'.
MSI (c) (EC:7C) [08:43:43:258]: PROPERTY CHANGE: Adding CLIENTUILEVEL property. Its value is '0'.
MSI (c) (EC:7C) [08:43:43:258]: PROPERTY CHANGE: Adding CLIENTPROCESSID property. Its value is '18924'.
MSI (c) (EC:7C) [08:43:43:258]: PROPERTY CHANGE: Adding MsiSystemRebootPending property. Its value is '1'.
MSI (c) (EC:7C) [08:43:43:258]: TRANSFORMS property is now: 
MSI (c) (EC:7C) [08:43:43:258]: PROPERTY CHANGE: Adding VersionDatabase property. Its value is '200'.
MSI (c) (EC:7C) [08:43:43:259]: SHELL32::SHGetFolderPath returned: C:UsersColinAppDataRoaming
MSI (c) (EC:7C) [08:43:43:259]: SHELL32::SHGetFolderPath returned: C:UsersColinFavorites
MSI (c) (EC:7C) [08:43:43:259]: SHELL32::SHGetFolderPath returned: C:UsersColinAppDataRoamingMicrosoftWindowsNetwork Shortcuts
MSI (c) (EC:7C) [08:43:43:259]: SHELL32::SHGetFolderPath returned: C:UsersColinDocuments
MSI (c) (EC:7C) [08:43:43:259]: SHELL32::SHGetFolderPath returned: C:UsersColinAppDataRoamingMicrosoftWindowsPrinter Shortcuts
MSI (c) (EC:7C) [08:43:43:260]: SHELL32::SHGetFolderPath returned: C:UsersColinAppDataRoamingMicrosoftWindowsRecent
MSI (c) (EC:7C) [08:43:43:260]: SHELL32::SHGetFolderPath returned: C:UsersColinAppDataRoamingMicrosoftWindowsSendTo
MSI (c) (EC:7C) [08:43:43:260]: SHELL32::SHGetFolderPath returned: C:UsersColinAppDataRoamingMicrosoftWindowsTemplates
MSI (c) (EC:7C) [08:43:43:260]: SHELL32::SHGetFolderPath returned: C:ProgramData
MSI (c) (EC:7C) [08:43:43:260]: SHELL32::SHGetFolderPath returned: C:UsersColinAppDataLocal
MSI (c) (EC:7C) [08:43:43:260]: SHELL32::SHGetFolderPath returned: C:UsersColinPictures
MSI (c) (EC:7C) [08:43:43:261]: SHELL32::SHGetFolderPath returned: C:ProgramDataMicrosoftWindowsStart MenuProgramsAdministrative Tools
MSI (c) (EC:7C) [08:43:43:261]: SHELL32::SHGetFolderPath returned: C:ProgramDataMicrosoftWindowsStart MenuProgramsStartup
MSI (c) (EC:7C) [08:43:43:261]: SHELL32::SHGetFolderPath returned: C:ProgramDataMicrosoftWindowsStart MenuPrograms
MSI (c) (EC:7C) [08:43:43:261]: SHELL32::SHGetFolderPath returned: C:ProgramDataMicrosoftWindowsStart Menu
MSI (c) (EC:7C) [08:43:43:261]: SHELL32::SHGetFolderPath returned: C:UsersPublicDesktop
MSI (c) (EC:7C) [08:43:43:262]: SHELL32::SHGetFolderPath returned: C:UsersColinAppDataRoamingMicrosoftWindowsStart MenuProgramsAdministrative Tools
MSI (c) (EC:7C) [08:43:43:262]: SHELL32::SHGetFolderPath returned: C:UsersColinAppDataRoamingMicrosoftWindowsStart MenuProgramsStartup
MSI (c) (EC:7C) [08:43:43:262]: SHELL32::SHGetFolderPath returned: C:UsersColinAppDataRoamingMicrosoftWindowsStart MenuPrograms
MSI (c) (EC:7C) [08:43:43:262]: SHELL32::SHGetFolderPath returned: C:UsersColinAppDataRoamingMicrosoftWindowsStart Menu
MSI (c) (EC:7C) [08:43:43:263]: SHELL32::SHGetFolderPath returned: C:UsersColinDesktop
MSI (c) (EC:7C) [08:43:43:263]: SHELL32::SHGetFolderPath returned: C:ProgramDataMicrosoftWindowsTemplates
MSI (c) (EC:7C) [08:43:43:264]: SHELL32::SHGetFolderPath returned: C:WINDOWSFonts
MSI (c) (EC:7C) [08:43:43:265]: Note: 1: 2898 2: MS Sans Serif 3: MS Sans Serif 4: 0 5: 16 
MSI (c) (EC:7C) [08:43:43:274]: MSI_LUA: Setting AdminUser property to 1 because this is the client or the user has already permitted elevation
MSI (c) (EC:7C) [08:43:43:274]: PROPERTY CHANGE: Adding AdminUser property. Its value is '1'.
MSI (c) (EC:7C) [08:43:43:274]: PROPERTY CHANGE: Adding Privileged property. Its value is '1'.
MSI (c) (EC:7C) [08:43:43:274]: Note: 1: 1402 2: HKEY_CURRENT_USERSoftwareMicrosoftMS Setup (ACME)User Info 3: 2 
MSI (c) (EC:7C) [08:43:43:274]: Note: 1: 1402 2: HKEY_CURRENT_USERSoftwareMicrosoftMS Setup (ACME)User Info 3: 2 
MSI (c) (EC:7C) [08:43:43:274]: PROPERTY CHANGE: Adding DATABASE property. Its value is 'C:SourceTestAppinDebugTestApp.Installer.msi'.
MSI (c) (EC:7C) [08:43:43:274]: PROPERTY CHANGE: Adding OriginalDatabase property. Its value is 'C:SourceTestAppinDebugTestApp.Installer.msi'.
MSI (c) (EC:7C) [08:43:43:274]: Machine policy value 'MsiDisableEmbeddedUI' is 0
MSI (c) (EC:7C) [08:43:43:274]: PROPERTY CHANGE: Adding SourceDir property. Its value is 'C:SourceTestAppinDebug'.
MSI (c) (

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

System Reboot: In this case a simple reboot solved the problem - which is great news.

Speculation: One could speculate as to why, and maybe it had to do with PendingFileRenames (file and folder names waiting to be changed) or some lock in Windows Updates that affected the System Restore point creation? Doesn't sound too likely. Just speculation.

A Deployment Mnemonic: To think about this - if you see the problem - a deployment mnemonic: What is locking (in use), what is blocking (permissions), what is corrupt (disk, malware, configs, encryption), what are unexpected system states (disk space, time & date settings, language, licensing, windows patch state, path too long, PendingFileRenames, etc...), what are incompatible products (things that can't co-exist), what is unreachable or misconfigured (what points to erroneous locations and resources: network server names, disk paths, URLs, databases, services, UAT environments, PROD environments, etc...) and last but not least: what is missing (runtime, resource image, settings file, etc...)? Launch debugging.


And the older answer. Leaving in to perhaps spark ideas:

  • Prevalence: Do other MSI files work without issues?
  • Timeout: How long do you wait for the MSI to initialize?
    • Initialization & System Restore: The Windows Installer engine may create a system restore point before the GUI is shown. This can be quite slow, and your setup could appear to hang.
  • Source: Maybe post your whole source.
  • Logging: Always make a log file for your installation session to debug.

Sounds like you don't need it, but here is a: Sample, minimal MSI compile with WiX Votive.

Gut feel is that there might be an AppSearch in this dialog set that I am unaware of. Maybe try to have a look at the sources yourself first (WixUI_Minimal.wxs et al). Any other issues with your machine? Virtual? Up to date with hotfixes? Malware checked? Disk space? Event logs?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...