Exemplo n.º 1
0
        private void DoRegister(bool allUsers)
        {
            try
            {
                if (!allUsers)
                {
                    OverrideHKCR();
                }

                var rs = new RegistrationServices();
                rs.RegisterAssembly(Assembly.LoadFrom(Path.Combine(crtDir, @"KeContextMenuHandler.dll")),
                                    AssemblyRegistrationFlags.SetCodeBase);

                ShellExtensionManager.RegisterShellExtContextMenuHandler(allUsers);

                if (!allUsers)
                {
                    OverrideHKCR(true);
                }
            }
            catch (Exception e)
            {
                MessageBox.Show(this, e.Message + "\r\n\r\n" + e.StackTrace);
            }
        }
Exemplo n.º 2
0
        private void Form1_Load(object sender, EventArgs e)
        {
            if (Environment.OSVersion.Version.CompareTo(new Version(6, 0)) <= 0)
            {
                MessageBox.Show(this, "Sorry, KrkrExtract is only for Windows 7, 8/8.1 and 10.",
                                "OS Outdated",
                                MessageBoxButtons.OK,
                                MessageBoxIcon.Error);

                Environment.Exit(0);
            }

            Text += " - V" + GetKeVersion();

            if (IsAdministrator())
            {
                Text += " (Administrator)";

                InstallAll.Enabled = false;
            }

            AddShieldToButton(InstallAll);
            AddShieldToButton(UninstallAll);

            UninstallUser.Enabled = ShellExtensionManager.IsInstalled(false);
            UninstallAll.Enabled  = ShellExtensionManager.IsInstalled(true);

            switch (Cmd)
            {
            case Command.KeInstallUser:
                InstallUser.PerformClick();
                break;

            case Command.keUninstallUser:
                UninstallUser.PerformClick();
                break;

            case Command.KeInstallAll:
                InstallAll.PerformClick();
                break;

            case Command.KeUnInstallAll:
                UninstallAll.PerformClick();
                break;
            }
        }