Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Speech / Src / Internal / ObjectToken / ObjectTokenCategory.cs / 1 / ObjectTokenCategory.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // // Description: // Object Token Category // // History: // 7/1/2004 jeanfp //--------------------------------------------------------------------------- using Microsoft.Win32; using System; using System.Collections; using System.Collections.Generic; using System.Globalization; namespace System.Speech.Internal.ObjectTokens { ////// Summary description for ObjectTokenCategory. /// internal class ObjectTokenCategory : RegistryDataKey, IEnumerable{ //******************************************************************* // // Constructors // //******************************************************************* #region Constructors protected ObjectTokenCategory (string keyId, RegistryKey hkey) : base (keyId, hkey) { } static internal ObjectTokenCategory Create (string sCategoryId) { string id; RegistryKey hkey = ObjectToken.CreateKey (sCategoryId, false, out id); if (hkey != null) { return new ObjectTokenCategory (id, hkey); } return null; } #endregion //******************************************************************** // // Internal Methods // //******************************************************************* #region internal Methods internal ObjectToken OpenToken (string keyName) { // Check if the token is for a voice string tokenName = keyName; if (!string.IsNullOrEmpty (tokenName) && tokenName.IndexOf ("HKEY_", StringComparison.Ordinal) != 0) { tokenName = string.Format (CultureInfo.InvariantCulture, @"{0}\Tokens\{1}", Id, tokenName); } bool fVoiceToken = !string.IsNullOrEmpty (tokenName) && tokenName.IndexOf (@"Voices\Tokens", StringComparison.Ordinal) > 0; return fVoiceToken ? VoiceObjectToken.Create (null, tokenName) : ObjectToken.Create (null, tokenName, false); } #if false internal ObjectToken CreateToken (string keyName) { return new ObjectToken (Id, @"Token\" + keyName, true); } internal void DeleteToken (string keyName) { DeleteKey (@"Token\" + keyName); } #endif #region IEnumerable implementation IEnumerator IEnumerable .GetEnumerator () { RegistryDataKey token; if (TryOpenKey ("Tokens", out token)) { foreach (RegistryDataKey key in token) { string id = key.Id; yield return OpenToken (key.Id); key.Dispose (); } token.Dispose (); } } IEnumerator IEnumerable.GetEnumerator () { return ((IEnumerable ) this).GetEnumerator (); } #endregion #endregion //******************************************************************** // // Protected Methods // //******************************************************************** #region Protected Methods protected override void Dispose (bool disposing) { base.Dispose (disposing); } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------------- // // // Copyright (C) Microsoft Corporation. All rights reserved. // // // // Description: // Object Token Category // // History: // 7/1/2004 jeanfp //--------------------------------------------------------------------------- using Microsoft.Win32; using System; using System.Collections; using System.Collections.Generic; using System.Globalization; namespace System.Speech.Internal.ObjectTokens { ////// Summary description for ObjectTokenCategory. /// internal class ObjectTokenCategory : RegistryDataKey, IEnumerable{ //******************************************************************* // // Constructors // //******************************************************************* #region Constructors protected ObjectTokenCategory (string keyId, RegistryKey hkey) : base (keyId, hkey) { } static internal ObjectTokenCategory Create (string sCategoryId) { string id; RegistryKey hkey = ObjectToken.CreateKey (sCategoryId, false, out id); if (hkey != null) { return new ObjectTokenCategory (id, hkey); } return null; } #endregion //******************************************************************** // // Internal Methods // //******************************************************************* #region internal Methods internal ObjectToken OpenToken (string keyName) { // Check if the token is for a voice string tokenName = keyName; if (!string.IsNullOrEmpty (tokenName) && tokenName.IndexOf ("HKEY_", StringComparison.Ordinal) != 0) { tokenName = string.Format (CultureInfo.InvariantCulture, @"{0}\Tokens\{1}", Id, tokenName); } bool fVoiceToken = !string.IsNullOrEmpty (tokenName) && tokenName.IndexOf (@"Voices\Tokens", StringComparison.Ordinal) > 0; return fVoiceToken ? VoiceObjectToken.Create (null, tokenName) : ObjectToken.Create (null, tokenName, false); } #if false internal ObjectToken CreateToken (string keyName) { return new ObjectToken (Id, @"Token\" + keyName, true); } internal void DeleteToken (string keyName) { DeleteKey (@"Token\" + keyName); } #endif #region IEnumerable implementation IEnumerator IEnumerable .GetEnumerator () { RegistryDataKey token; if (TryOpenKey ("Tokens", out token)) { foreach (RegistryDataKey key in token) { string id = key.Id; yield return OpenToken (key.Id); key.Dispose (); } token.Dispose (); } } IEnumerator IEnumerable.GetEnumerator () { return ((IEnumerable ) this).GetEnumerator (); } #endregion #endregion //******************************************************************** // // Protected Methods // //******************************************************************** #region Protected Methods protected override void Dispose (bool disposing) { base.Dispose (disposing); } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- NavigationProperty.cs
- LocalFileSettingsProvider.cs
- PersonalizationState.cs
- UrlEncodedParameterWriter.cs
- FormattedText.cs
- XmlILModule.cs
- HierarchicalDataSourceConverter.cs
- Pipe.cs
- CodeGenerator.cs
- SymmetricKeyWrap.cs
- TreeNodeStyle.cs
- PenContexts.cs
- PolicyUnit.cs
- WindowsTab.cs
- TemplateBuilder.cs
- CommandHelpers.cs
- Funcletizer.cs
- Thread.cs
- HttpStreamXmlDictionaryWriter.cs
- ObjectResult.cs
- XmlDigitalSignatureProcessor.cs
- EventItfInfo.cs
- GeometryHitTestParameters.cs
- Utils.cs
- DescendentsWalkerBase.cs
- ExpressionNormalizer.cs
- DesignerDataTableBase.cs
- BaseUriHelper.cs
- ExpandableObjectConverter.cs
- GroupQuery.cs
- DispatcherExceptionFilterEventArgs.cs
- NativeMethods.cs
- RenderingEventArgs.cs
- KerberosReceiverSecurityToken.cs
- PerformanceCounterLib.cs
- FileDialogCustomPlacesCollection.cs
- HMAC.cs
- GiveFeedbackEvent.cs
- SqlConnectionPoolProviderInfo.cs
- _MultipleConnectAsync.cs
- AdRotator.cs
- DocumentReference.cs
- filewebresponse.cs
- CommonGetThemePartSize.cs
- MenuCommand.cs
- Gdiplus.cs
- CuspData.cs
- VarInfo.cs
- DebugInfoGenerator.cs
- AssemblyCollection.cs
- querybuilder.cs
- ListDictionaryInternal.cs
- DrawingContextWalker.cs
- EntryIndex.cs
- NaturalLanguageHyphenator.cs
- Mutex.cs
- RtType.cs
- SafeUserTokenHandle.cs
- XPathNavigatorReader.cs
- RoutedPropertyChangedEventArgs.cs
- PathFigureCollection.cs
- ExpressionPrinter.cs
- ContentControl.cs
- DataTablePropertyDescriptor.cs
- EditingCommands.cs
- XmlSchemaComplexType.cs
- HttpMethodAttribute.cs
- UriTemplateLiteralQueryValue.cs
- TimeSpanStorage.cs
- WebPartsSection.cs
- BinaryCommonClasses.cs
- XmlSchemaValidationException.cs
- GeneralTransformGroup.cs
- SectionInput.cs
- RoleManagerModule.cs
- NativeMethods.cs
- Style.cs
- SchemaNotation.cs
- GridViewRowEventArgs.cs
- ClientUtils.cs
- WaitForChangedResult.cs
- CachingHintValidation.cs
- RightsManagementEncryptionTransform.cs
- RevocationPoint.cs
- AttributeCollection.cs
- ExceptQueryOperator.cs
- ConfigXmlWhitespace.cs
- FixedSchema.cs
- XmlNodeComparer.cs
- SBCSCodePageEncoding.cs
- QuaternionRotation3D.cs
- GeometryConverter.cs
- NativeStructs.cs
- ActivationService.cs
- MethodImplAttribute.cs
- UpdateCommandGenerator.cs
- QilExpression.cs
- BufferedStream.cs
- DateTimeOffsetAdapter.cs
- RadioButtonBaseAdapter.cs