Esempio n. 1
0
        protected override void OnXmlReadTag(XmlElementEventArgs e)
        {
            // lcid type
            ReadAttributeValue(e, "lcid_type", ref m_lcidtype);
            ReadAttributeValue(e, "show_language_selector", ref m_show_language_selector);
            ReadAttributeValue(e, "language_selector_title", ref m_language_selector_title);
            ReadAttributeValue(e, "language_selector_ok", ref m_language_selector_ok);
            ReadAttributeValue(e, "language_selector_cancel", ref m_language_selector_cancel);
            // processor and os filter architecture messages
            ReadAttributeValue(e, "configuration_no_match_message", ref m_configuration_no_match_message);
            // logging
            ReadAttributeValue(e, "log_enabled", ref m_log_enabled);
            ReadAttributeValue(e, "log_file", ref m_log_file);
            // legacy
            OnXmlReadTagLegacy(e);
            // ui level
            ReadAttributeValue <InstallUILevel>(e, "ui_level", ref m_ui_level);
            // backwards compatibility: silent_install
            bool silentInstall = false;

            if (ReadAttributeValue(e, "silent_install", ref silentInstall) && silentInstall)
            {
                m_ui_level = InstallUILevel.silent;
            }
            // version information
            ReadAttributeValue(e, "fileversion", ref m_fileversion);
            ReadAttributeValue(e, "productversion", ref m_productversion);
            base.OnXmlReadTag(e);
        }
Esempio n. 2
0
        public static void PushUILevel(InstallUILevel uiLevel)
        {
            TaskLogger.LogEnter();
            IntPtr zero = IntPtr.Zero;

            MsiUtility.PushUILevel(uiLevel, ref zero);
            TaskLogger.LogExit();
        }
Esempio n. 3
0
        private static void PushUILevel(InstallUILevel uiLevel, ref IntPtr window)
        {
            TaskLogger.LogEnter();
            InstallUILevel installUILevel = MsiNativeMethods.SetInternalUI(uiLevel, ref window);

            if (installUILevel == InstallUILevel.NoChange)
            {
                throw new ArgumentOutOfRangeException("uiLevel", installUILevel, Strings.ExceptionInvalidUILevel);
            }
            MsiUtility.uiSettings.Push(new MsiUtility.InternalUISettings(uiLevel, window, null));
            TaskLogger.LogExit();
        }
Esempio n. 4
0
        public static void PushExternalUI(MsiUIHandler handler, InstallLogMode logMode)
        {
            TaskLogger.LogEnter();
            IntPtr         zero           = IntPtr.Zero;
            InstallUILevel installUILevel = MsiNativeMethods.SetInternalUI(InstallUILevel.None | InstallUILevel.SourceResOnly, ref zero);

            if (installUILevel == InstallUILevel.NoChange)
            {
                throw new ArgumentOutOfRangeException("uiLevel", installUILevel, Strings.ExceptionInvalidUILevel);
            }
            MsiUIHandlerDelegate handlerDelegate = MsiNativeMethods.SetExternalUI(handler.UIHandlerDelegate, logMode, null);

            MsiUtility.uiSettings.Push(new MsiUtility.InternalUISettings(InstallUILevel.None | InstallUILevel.SourceResOnly, zero, handlerDelegate));
        }
Esempio n. 5
0
 protected override void OnXmlReadTag(XmlElementEventArgs e)
 {
     // lcid type
     ReadAttributeValue(e, "lcid_type", ref m_lcidtype);
     ReadAttributeValue(e, "show_language_selector", ref m_show_language_selector);
     ReadAttributeValue(e, "language_selector_title", ref m_language_selector_title);
     ReadAttributeValue(e, "language_selector_ok", ref m_language_selector_ok);
     ReadAttributeValue(e, "language_selector_cancel", ref m_language_selector_cancel);
     // processor and os filter architecture messages
     ReadAttributeValue(e, "configuration_no_match_message", ref m_configuration_no_match_message);
     // logging
     ReadAttributeValue(e, "log_enabled", ref m_log_enabled);
     ReadAttributeValue(e, "log_file", ref m_log_file);
     // legacy
     OnXmlReadTagLegacy(e);
     // ui level
     ReadAttributeValue<InstallUILevel>(e, "ui_level", ref m_ui_level);
     // backwards compatibility: silent_install
     bool silentInstall = false;
     if (ReadAttributeValue(e, "silent_install", ref silentInstall) && silentInstall)
     {
         m_ui_level = InstallUILevel.silent;
     }
     // version information
     ReadAttributeValue(e, "fileversion", ref m_fileversion);
     ReadAttributeValue(e, "productversion", ref m_productversion);
     base.OnXmlReadTag(e);
 }
Esempio n. 6
0
 internal static extern InstallUILevel SetInternalUI(InstallUILevel uiLevel, [In][Out] ref IntPtr window);
Esempio n. 7
0
 public InternalUISettings(InstallUILevel uiLevel, IntPtr window, MsiUIHandlerDelegate handlerDelegate)
 {
     this.UILevel           = uiLevel;
     this.Window            = window;
     this.UIHandlerDelegate = handlerDelegate;
 }
Esempio n. 8
0
 /// <summary>
 /// Enable the installer's internal user interface. This interface is used for all subsequent calls to user-interface-generating installer
 /// functions in this process.
 /// </summary>
 /// <param name="uiLevel">Specifies the level of complexity of the user interface.</param>
 /// <returns>The previous user interface level. If an invalid UI level is passed, then <see cref="InstallUILevel.NoChange"/> is returned.</returns>
 public static InstallUILevel SetInternalUI(InstallUILevel uiLevel)
 {
     return((InstallUILevel)NativeMethods.MsiSetInternalUI((uint)uiLevel, IntPtr.Zero));
 }
Esempio n. 9
0
 /// <summary>
 /// Enable the installer's internal user interface. This interface is used for all subsequent calls to user-interface-generating installer
 /// functions in this process.
 /// </summary>
 /// <param name="uiLevel">Specifies the level of complexity of the user interface.</param>
 /// <param name="windowHandle">Handle to a window that becomes the owner of any user interface created. A pointer to the previous owner
 /// of the user interface is returned. If set to <see langword="null"/>, the owner does not change.</param>
 /// <returns>The previous user interface level. If an invalid UI level is passed, then <see cref="InstallUILevel.NoChange"/> is returned.</returns>
 public static InstallUILevel SetInternalUI(InstallUILevel uiLevel, ref IntPtr windowHandle)
 {
     return((InstallUILevel)NativeMethods.MsiSetInternalUI((uint)uiLevel, ref windowHandle));
 }