コード例 #1
0
        public static void RegisterAddIn(
            Type t,
            SupportedSoftwareVersionEnum supportedSoftwareVersion,
            string softwareVersion,
            bool loadOnStartup,
            string addinVersion)
        {
            RegInfo info = new RegInfo(t);

            using (RegistryKey keyClsid = Registry.ClassesRoot.CreateSubKey(@"CLSID\" + info.AddInGuid))
            {
                keyClsid.SetValue(null, info.Title);
                keyClsid.CreateSubKey(@"Implemented Categories\{39AD2B5C-7A29-11D6-8E0A-0010B541CAA8}");

                using (RegistryKey keySettings = keyClsid.CreateSubKey("Settings"))
                {
                    keySettings.SetValue("AddInType", "Standard");
                    keySettings.SetValue("LoadOnStartup", (loadOnStartup ? "1" : "0"));

                    switch (supportedSoftwareVersion)
                    {
                    case SupportedSoftwareVersionEnum.kSupportedSoftwareVersionEqualTo:
                        keySettings.SetValue("SupportedSoftwareVersionEqualTo", softwareVersion);
                        break;

                    case SupportedSoftwareVersionEnum.kSupportedSoftwareVersionGreaterThan:
                        keySettings.SetValue("SupportedSoftwareVersionGreaterThan", softwareVersion);
                        break;

                    case SupportedSoftwareVersionEnum.kSupportedSoftwareVersionLessThan:
                        keySettings.SetValue("SupportedSoftwareVersionLessThan", softwareVersion);
                        break;

                    case SupportedSoftwareVersionEnum.kSupportedSoftwareVersionNotEqualTo:
                        keySettings.SetValue("SupportedSoftwareVersionNotEqualTo", softwareVersion);
                        break;

                    default:
                        keySettings.SetValue("SupportedSoftwareVersionGreaterThan", softwareVersion);
                        break;
                    }

                    keySettings.SetValue("Version", addinVersion);
                }

                using (RegistryKey keyDescription = keyClsid.CreateSubKey("Description"))
                {
                    keyDescription.SetValue(null, info.Description);
                }
            }
        }
コード例 #2
0
        public static void RegisterAddIn(
            Type t,
            SupportedSoftwareVersionEnum supportedSoftwareVersion,
            string softwareVersion,
            bool loadOnStartup,
            string addinVersion)
        {
            RegInfo info = new RegInfo(t);

            using (RegistryKey keyClsid = Registry.ClassesRoot.CreateSubKey(@"CLSID\" + info.AddInGuid))
            {
                keyClsid.SetValue(null, info.Title);
                keyClsid.CreateSubKey(@"Implemented Categories\{39AD2B5C-7A29-11D6-8E0A-0010B541CAA8}");

                using (RegistryKey keySettings = keyClsid.CreateSubKey("Settings"))
                {
                    keySettings.SetValue("AddInType", "Standard");
                    keySettings.SetValue("LoadOnStartup", (loadOnStartup ? "1" : "0"));

                    switch (supportedSoftwareVersion)
                    {
                        case SupportedSoftwareVersionEnum.kSupportedSoftwareVersionEqualTo:
                            keySettings.SetValue("SupportedSoftwareVersionEqualTo", softwareVersion);
                            break;
                        case SupportedSoftwareVersionEnum.kSupportedSoftwareVersionGreaterThan:
                            keySettings.SetValue("SupportedSoftwareVersionGreaterThan", softwareVersion);
                            break;
                        case SupportedSoftwareVersionEnum.kSupportedSoftwareVersionLessThan:
                            keySettings.SetValue("SupportedSoftwareVersionLessThan", softwareVersion);
                            break;
                        case SupportedSoftwareVersionEnum.kSupportedSoftwareVersionNotEqualTo:
                            keySettings.SetValue("SupportedSoftwareVersionNotEqualTo", softwareVersion);
                            break;
                        default:
                            keySettings.SetValue("SupportedSoftwareVersionGreaterThan", softwareVersion);
                            break;
                    }

                    keySettings.SetValue("Version", addinVersion);
                }

                using (RegistryKey keyDescription = keyClsid.CreateSubKey("Description"))
                {
                    keyDescription.SetValue(null, info.Description);
                }
            }
        }