示例#1
0
        internal static int DefaultDeviceOut()
        {
            int result = -1;

            using (ObjectTokenCategory objectTokenCategory = ObjectTokenCategory.Create("HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Speech\\AudioOutput"))
            {
                if (objectTokenCategory == null)
                {
                    return(result);
                }
                string value;
                if (!objectTokenCategory.TryGetString("DefaultTokenId", out value))
                {
                    return(result);
                }
                int num = value.IndexOf('\\');
                if (num <= 0)
                {
                    return(result);
                }
                if (num < value.Length)
                {
                    using (RegistryDataKey registryDataKey = RegistryDataKey.Create(value.Substring(num + 1), Registry.LocalMachine))
                    {
                        if (registryDataKey != null)
                        {
                            return(AudioDeviceOut.GetDevicedId(registryDataKey.Name));
                        }
                        return(result);
                    }
                }
                return(result);
            }
        }
示例#2
0
        private static ObjectToken GetPreference(string category, string defaultLocation)
        {
            ObjectToken result = null;

            using (ObjectTokenCategory objectTokenCategory = ObjectTokenCategory.Create(category))
            {
                if (objectTokenCategory == null)
                {
                    return(result);
                }
                string value;
                if (objectTokenCategory.TryGetString(defaultLocation, out value))
                {
                    return(objectTokenCategory.OpenToken(value));
                }
                return(result);
            }
        }