Ejemplo n.º 1
0
        public static void SetDefaultEndpoint(string devId, ERole eRole)
        {
            object policyConfig = null;

            try
            {
                policyConfig = ComObjectFactory.GetPolicyConfig();

                switch (policyConfig)
                {
                case IPolicyConfigRedstone3 config:
                    config.SetDefaultEndpoint(devId, eRole);
                    break;

                case IPolicyConfigRedstone2 config:
                    config.SetDefaultEndpoint(devId, eRole);
                    break;

                case IPolicyConfigRedstone config:
                    config.SetDefaultEndpoint(devId, eRole);
                    break;

                case IPolicyConfigX config:
                    config.SetDefaultEndpoint(devId, eRole);
                    break;

                case IPolicyConfig config:
                    config.SetDefaultEndpoint(devId, eRole);
                    break;

                case IPolicyConfigVista config:
                    config.SetDefaultEndpoint(devId, eRole);
                    break;

                case IPolicyConfigUnknown config:
                    config.SetDefaultEndpoint(devId, eRole);
                    break;
                }
            }
            finally
            {
                if (policyConfig != null && Marshal.IsComObject(policyConfig))
                {
                    Marshal.FinalReleaseComObject(policyConfig);
                }
            }
        }
Ejemplo n.º 2
0
        public static void SetDefaultEndpoint(string devId, ERole eRole)
        {
            object policyConfig = null;

            try
            {
                policyConfig = ComObjectFactory.GetPolicyConfig();

                var policyConfig7        = policyConfig as IPolicyConfig;
                var policyConfigVista    = policyConfig as IPolicyConfigVista;
                var policyConfigX        = policyConfig as IPolicyConfigX;
                var policyConfigRedstone = policyConfig as IPolicyConfigRedstone;

                if (policyConfigRedstone != null)
                {
                    policyConfigRedstone.SetDefaultEndpoint(devId, eRole);
                }
                else if (policyConfigX != null)
                {
                    policyConfigX.SetDefaultEndpoint(devId, eRole);
                }
                else if (policyConfig7 != null)
                {
                    policyConfig7.SetDefaultEndpoint(devId, eRole);
                }
                else if (policyConfigVista != null)
                {
                    policyConfigVista.SetDefaultEndpoint(devId, eRole);
                }
                else
                {
                    var policyConfigUnknown = policyConfig as IPolicyConfigUnknown;
                    policyConfigUnknown?.SetDefaultEndpoint(devId, eRole);
                }
            }
            finally
            {
                if (policyConfig != null && Marshal.IsComObject(policyConfig))
                {
                    Marshal.FinalReleaseComObject(policyConfig);
                }
            }
        }