Installer just ignored user input when rebooting windows

Jun 21, 2010 at 6:27 AM
Edited Jun 21, 2010 at 6:28 AM

Hi, 

In my case, I have dotNetInstaller install .net framework 4  fist (by using /q /norestart), then I have dotNetInstaller checking the return code (3010) to reboot system then automatic continue installation process. When .net framework 4 Client Profile finished installation and return 3010,  dotNetInstaller popup a message box have user choosing whether to reboot system or not.

However, dotNetInstaller didn't stop to waiting user input after the message box was showing, it just continued to reboot the system and user had no chance to choose rebooting system later. 

Here is my config file and my OS is WindowsXP SP3,  donetInstaller version is 1.9.5931.0.

 

<?xml version="1.0" encoding="utf-8"?>
<configurations lcid_type="UserExe" show_language_selector="False" language_selector_title="" language_selector_ok="OK" language_selector_cancel="Cancel" configuration_no_match_message="You need Windows XP SP3/Windows Vista/Windows 7 or higher version Windows to install XXXX 5" ui_level="basic" fileversion="" productversion="" log_enabled="False" log_file="#TEMPPATH\dotNetInstallerLog.txt">
  <schema version="1.9.5931.0" generator="dotNetInstaller InstallerEditor" />
  <fileattributes>
    <fileattribute name="ProductName" value="XXXX 5" />
    <fileattribute name="ProductVersion" value="5" />
    <fileattribute name="LegalCopyright" value="Copyright(c) XX Ltd" />
    <fileattribute name="CompanyName" value="XXXX Ltd" />
  </fileattributes>
  <configuration dialog_caption="XXXX 5" dialog_message="In order to install XXXX 5 you must first install these components:" dialog_message_uninstall="" dialog_bitmap="#APPPATH\banner.bmp" skip_caption="Skip" install_caption="Install" uninstall_caption="Uninstall" cancel_caption="Close" status_installed=" (Installed)" status_notinstalled="" failed_exec_command_continue="Failed to install %s. " installation_completed="XXXX 5 installed successfully!" uninstallation_completed="XXXX 5 (.Net Framework 4 Test Release) uninstalled successfully!" installation_none="XXXX 5 (.Net Framework 4 Test Release) is already installed!" uninstallation_none="XXXX 5 (.Net Framework 4 Test Release) is not installed!" installing_component_wait="Installing %s. Wait, this operation could take some time ..." uninstalling_component_wait="Uninstalling %s. Wait, this operation could take some time ..." reboot_required="XXXX 5 need to restart your computer to complete the installation process. Would you like to restart now?" must_reboot_required="False" dialog_otherinfo_caption="Visite www.XXXX.com for more infomation" dialog_otherinfo_link="www.XXXX.com" complete_command="" complete_command_silent="" complete_command_basic="" wait_for_complete_command="True" auto_close_if_installed="False" auto_close_on_error="False" allow_continue_on_error="False" dialog_show_installed="True" dialog_show_uninstalled="True" dialog_show_required="True" cab_dialog_message="%s" cab_cancelled_message="" cab_dialog_caption="Please wait" cab_path="#TEMPPATH\#GUID" cab_path_autodelete="True" dialog_position="" dialog_components_list_position="" dialog_message_position="" dialog_bitmap_position="" dialog_otherinfo_link_position="" dialog_osinfo_position="" dialog_install_button_position="" dialog_cancel_button_position="" dialog_skip_button_position="" auto_start="False" auto_continue_on_reboot="True" reboot_cmd="" type="install" lcid_filter="" language_id="" language="" os_filter_greater="82" os_filter_smaller="" processor_architecture_filter="" supports_install="True" supports_uninstall="True">
    <component command="&quot;#TEMPPATH\WindowsInstaller-KB893803-v2-x86.exe&quot;  /passive /norestart" command_silent="" command_basic="" uninstall_command="" uninstall_command_silent="" uninstall_command_basic="" returncodes_success="" returncodes_reboot="3010" id="Windows Installer 3.1 or Higher" display_name="Windows Installer 3.1 or Higher" uninstall_display_name="" os_filter_greater="" os_filter_smaller="" os_filter_lcid="" type="cmd" installcompletemessage="" uninstallcompletemessage="" mustreboot="False" reboot_required="" must_reboot_required="True" failed_exec_command_continue="" allow_continue_on_error="False" required="True" selected="True" note="" processor_architecture_filter="" status_installed="" status_notinstalled="" supports_install="True" supports_uninstall="False">
      <downloaddialog dialog_caption="(XXXX 5 Installer)Windows Installer 3.1 - Download Components" dialog_message="Press 'Start' to download the required components for installing COMPONENT_NAME." dialog_message_downloading="Downloading ..." dialog_message_copying="Copying ..." dialog_message_connecting="Connecting ..." dialog_message_sendingrequest="Sending request ..." autostartdownload="True" buttonstart_caption="Start" buttoncancel_caption="Cancel">
        <download componentname="Download File" sourceurl="http://download.microsoft.com/download/1/4/7/147ded26-931c-4daf-9095-ec7baf996f46/WindowsInstaller-KB893803-v2-x86.exe" sourcepath="WindowsInstaller-KB893803-v2-x86.exe" destinationpath="#TEMPPATH\" destinationfilename="WindowsInstaller-KB893803-v2-x86.exe" alwaysdownload="True" clear_cache="False" />
      </downloaddialog>
      <installedcheck filename="#SYSTEMPATH\msi.dll" fileversion="3.0.3790.2538" comparison="version_ge" defaultvalue="False" type="check_file" description="Installed Check" />
    </component>
    <component command="&quot;#CABPATH\dotNetFx40_Client_setup.exe&quot; /q /norestart" command_silent="" command_basic="" uninstall_command="" uninstall_command_silent="" uninstall_command_basic="" returncodes_success="" returncodes_reboot="3010" id=".Net Framework 4 Client Profile for XXXX 5" display_name=".Net Framework 4 Client Profile for XXXX 5" uninstall_display_name="" os_filter_greater="" os_filter_smaller="" os_filter_lcid="" type="cmd" installcompletemessage="" uninstallcompletemessage="" mustreboot="False" reboot_required="XXXX 5 need to restart your computer to complete the installation process. Would you like to restart now?" must_reboot_required="False" failed_exec_command_continue="" allow_continue_on_error="False" required="True" selected="True" note="XXXX 5 .Net Framework 4 Client Profile Websetup" processor_architecture_filter="" status_installed="" status_notinstalled="" supports_install="True" supports_uninstall="False">
      <installedcheck path="SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client\" fieldname="Install" fieldvalue="1" defaultvalue="False" fieldtype="REG_DWORD" comparison="match" rootkey="HKEY_LOCAL_MACHINE" wowoption="NONE" type="check_registry_value" description="Installed Check" />
    </component>
    <component package="#CABPATH\XXXX5830.msi" cmdparameters="" cmdparameters_silent="/qn" cmdparameters_basic="/qf" uninstall_package="" uninstall_cmdparameters="/qb-" uninstall_cmdparameters_silent="/qn" uninstall_cmdparameters_basic="/qb-" id="XXXX5.msi" display_name="XXXX 5 MSI" uninstall_display_name="" os_filter_greater="" os_filter_smaller="" os_filter_lcid="" type="msi" installcompletemessage="" uninstallcompletemessage="" mustreboot="False" reboot_required="" must_reboot_required="False" failed_exec_command_continue="" allow_continue_on_error="False" required="True" selected="True" note="" processor_architecture_filter="" status_installed="" status_notinstalled="" supports_install="True" supports_uninstall="True" />
    <embedfile sourcefilepath="#APPPATH\dotNetFx40_Client_setup.exe" targetfilepath="" />
    <embedfile sourcefilepath="#APPPATH\output\XXXX5830.msi" targetfilepath="" />
  </configuration>
</configurations>

Thank you very much.

 

Coordinator
Jun 21, 2010 at 12:10 PM

Post a log file please, /log /logfile install.log. Thx.

Jun 22, 2010 at 1:00 AM

Hi, 

Thanks for replying so quickly.  Here is my log (after rebooting, I canceled it because everything goes well after that).  

2010-06-21 15:00:28	-------------------------------------------------------------------
2010-06-21 15:00:28	dotNetInstaller (DNI) started, version 1.9.5931.0
2010-06-21 15:00:28	Copyright (c) DevAge, Vestris Inc. & Contributors
2010-06-21 15:00:28	Operating system: Windows XP Sp3
2010-06-21 15:00:28	Sequence: install
2010-06-21 15:00:28	-------------------------------------------------------------------
2010-06-21 15:00:28	Loaded configuration from embedded resource 'RES_CONFIGURATION'
2010-06-21 15:00:28	Loaded schema: version=1.9.5931.0, generator=dotNetInstaller InstallerEditor
2010-06-21 15:00:28	Read file attribute: name=ProductName, value=NovaMind 5
2010-06-21 15:00:28	Read file attribute: name=ProductVersion, value=5
2010-06-21 15:00:28	Read file attribute: name=LegalCopyright, value=Copyright(c) NMS Global Pty Ltd
2010-06-21 15:00:28	Read file attribute: name=CompanyName, value=NMS Global NM Pty Ltd
2010-06-21 15:00:28	Read 4 file attribute(s)
2010-06-21 15:00:28	Loaded 'download' dialog component 'Download File', source=http://download.microsoft.com/download/1/4/7/147ded26-931c-4daf-9095-ec7baf996f46/WindowsInstaller-KB893803-v2-x86.exe
2010-06-21 15:00:28	Loaded 'download' configuration '(NovaMind 5 Installer)Windows Installer 3.1 - Download Components' with 1 file(s)
2010-06-21 15:00:28	Loaded 'file' installed check 'C:\WINDOWS\system32\msi.dll'
2010-06-21 15:00:28	Loaded Windows Installer 3.1 or Higher, display_name='Windows Installer 3.1 or Higher'
2010-06-21 15:00:28	Loaded 'registry' installed check 'HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client\\Install'
2010-06-21 15:00:28	Loaded .Net Framework 4 Client Profile for NovaMind 5, display_name='.Net Framework 4 Client Profile for NovaMind 5'
2010-06-21 15:00:28	Loaded NovaMind5.msi, display_name='NovaMind 5 MSI'
2010-06-21 15:00:28	Loaded 3 component(s) from configuration type=1 (lcid_filter=, os_filter_greater=82, os_filter_smaller=, processor_architecture_filter=)
2010-06-21 15:00:28	--- Read 1 configuration(s)
2010-06-21 15:00:28	-- Loading supported configurations (lcid=1033)
2010-06-21 15:00:28	-- Loading supported configurations (lcid=1033)
2010-06-21 15:00:28	-- Loading supported components (lcid=1033)
2010-06-21 15:00:28	-- Windows Installer 3.1 or Higher (display_name='Windows Installer 3.1 or Higher', os_filter_lcid=, os_filter_greater=, os_filter_smaller=, processor_architecture_filter=): LOADED
2010-06-21 15:00:28	-- .Net Framework 4 Client Profile for XXXX 5 (display_name='.Net Framework 4 Client Profile for XXXX 5', os_filter_lcid=, os_filter_greater=, os_filter_smaller=, processor_architecture_filter=): LOADED
2010-06-21 15:00:28	-- XXXX5.msi (display_name='XXXX 5 MSI', os_filter_lcid=, os_filter_greater=, os_filter_smaller=, processor_architecture_filter=): LOADED
2010-06-21 15:00:28	--- Loaded 3 supported component(s)
2010-06-21 15:00:28	Checking file: C:\WINDOWS\system32\msi.dll
2010-06-21 15:00:28	File version: C:\WINDOWS\system32\msi.dll - 3.1.4001.5512
2010-06-21 15:00:28	-- Windows Installer 3.1 or Higher (Windows Installer 3.1 or Higher): INSTALLED
2010-06-21 15:00:28	Checking whether registry value 'SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client\\Install' exists
2010-06-21 15:00:28	*** No registry key found: SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client\\Install, default value: false
2010-06-21 15:00:28	-- .Net Framework 4 Client Profile for XXXX 5 (.Net Framework 4 Client Profile for XXXX 5): NOT INSTALLED
2010-06-21 15:00:28	-- XXXX5.msi (XXXX 5 MSI): NOT INSTALLED
2010-06-21 15:00:28	Silent mode: automatically starting install
2010-06-21 15:00:28	Extracting embedded files for component '*': 1 CAB(s)
2010-06-21 15:00:28	Resolved CAB path 'C:\DOCUME~1\alex\LOCALS~1\Temp\{023E3C87-5DA2-4B51-8691-124074232106}' for component '*'
2010-06-21 15:00:28	Extracting 'SETUP_1.CAB' for component '*'
2010-06-21 15:00:28	Extracting: C:\DOCUME~1\alex\LOCALS~1\Temp\{023E3C87-5DA2-4B51-8691-124074232106}\dotNetFx40_Client_setup.exe
2010-06-21 15:00:28	Done: C:\DOCUME~1\alex\LOCALS~1\Temp\{023E3C87-5DA2-4B51-8691-124074232106}\dotNetFx40_Client_setup.exe
2010-06-21 15:00:28	Extracting: C:\DOCUME~1\alex\LOCALS~1\Temp\{023E3C87-5DA2-4B51-8691-124074232106}\XXXX5830.msi
2010-06-21 15:00:29	Done: C:\DOCUME~1\alex\LOCALS~1\Temp\{023E3C87-5DA2-4B51-8691-124074232106}\XXXX5830.msi
2010-06-21 15:00:29	-- Loading supported components (lcid=1033)
2010-06-21 15:00:29	-- Windows Installer 3.1 or Higher (display_name='Windows Installer 3.1 or Higher', os_filter_lcid=, os_filter_greater=, os_filter_smaller=, processor_architecture_filter=): LOADED
2010-06-21 15:00:29	-- .Net Framework 4 Client Profile for XXXX 5 (display_name='.Net Framework 4 Client Profile for XXXX 5', os_filter_lcid=, os_filter_greater=, os_filter_smaller=, processor_architecture_filter=): LOADED
2010-06-21 15:00:29	-- XXXX5.msi (display_name='XXXX 5 MSI', os_filter_lcid=, os_filter_greater=, os_filter_smaller=, processor_architecture_filter=): LOADED
2010-06-21 15:00:29	--- Loaded 3 supported component(s)
2010-06-21 15:00:29	--- Component 'Windows Installer 3.1 or Higher' (Windows Installer 3.1 or Higher): SKIPPED
2010-06-21 15:00:29	--- Component '.Net Framework 4 Client Profile for XXXX 5' (.Net Framework 4 Client Profile for XXXX 5): EXECUTING
2010-06-21 15:00:29	Extracting embedded files for component '.Net Framework 4 Client Profile for XXXX 5': NO FILES EMBEDDED
2010-06-21 15:00:29	Executing: "C:\DOCUME~1\alex\LOCALS~1\Temp\{023E3C87-5DA2-4B51-8691-124074232106}\dotNetFx40_Client_setup.exe" /q /norestart
2010-06-21 15:05:28	--- Component '.Net Framework 4 Client Profile for XXXX 5 (.Net Framework 4 Client Profile for XXXX 5): DIALOG CLOSED
2010-06-21 15:05:28	Component '.Net Framework 4 Client Profile for XXXX 5' return code '3010, defined as reboot required in '3010.
2010-06-21 15:05:28	*** Component '.Net Framework 4 Client Profile for XXXX 5' (.Net Framework 4 Client Profile for XXXX 5): SUCCESS
2010-06-21 15:05:28	--- Component '.Net Framework 4 Client Profile for XXXX 5 (.Net Framework 4 Client Profile for XXXX 5): REQUESTS REBOOT
2010-06-21 15:05:31	--- Component '.Net Framework 4 Client Profile for XXXX 5 (.Net Framework 4 Client Profile for XXXX 5: CAUSED A REBOOT
2010-06-21 15:05:31	Writing HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\XXXX5830.exe: "C:\Documents and Settings\alex\Desktop\XXXX5830.exe" /log /logfile i.log /Reboot
2010-06-21 15:05:31	Deleting temporary folder: C:\DOCUME~1\alex\LOCALS~1\Temp\{023E3C87-5DA2-4B51-8691-124074232106}
2010-06-21 15:05:31	dotNetInstaller finished, return code=0

Jun 23, 2010 at 2:54 AM

Well, I just tested to change into full ui leve (set ui_level="full"). This time, DNI waits for user input then reboot. 

How can I have DNI wait for user input when ui_level is "basic"?

Coordinator
Jun 23, 2010 at 2:40 PM

Sounds like you found the problem. Basic mode means "progress dialogs are shown, but no user interaction is required". So by definition it doesn't wait for user input. I would find it odd if basic mode didn't follow this rule everywhere.

Maybe the root question is: why did you want to make basic mode the default in the first place?

Jun 30, 2010 at 1:42 AM

It just because I want to auto start the installation process at the begin. I've found I should do that by seting the auto_start flag.

Thank you very much. Nice work!