Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / 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
- panel.cs
- HttpCookieCollection.cs
- TimerEventSubscription.cs
- CookielessHelper.cs
- StylusButtonCollection.cs
- QueryTaskGroupState.cs
- ClientBuildManager.cs
- UriScheme.cs
- DataServiceQueryException.cs
- ProjectionRewriter.cs
- Win32SafeHandles.cs
- LabelEditEvent.cs
- OdbcConnectionHandle.cs
- RequestContext.cs
- EntityCommand.cs
- DelegatedStream.cs
- OracleEncoding.cs
- COM2EnumConverter.cs
- Size.cs
- TextRunProperties.cs
- DeclarationUpdate.cs
- XmlQuerySequence.cs
- SqlSupersetValidator.cs
- SecureUICommand.cs
- TransformConverter.cs
- ObjectStateManagerMetadata.cs
- ValidationSummary.cs
- DataMisalignedException.cs
- RecordsAffectedEventArgs.cs
- TemplateColumn.cs
- ObjectDisposedException.cs
- WizardForm.cs
- StateMachineWorkflowDesigner.cs
- Converter.cs
- Label.cs
- XmlAttributeCollection.cs
- TabItemAutomationPeer.cs
- ApplicationHost.cs
- OleDbReferenceCollection.cs
- ScriptControl.cs
- ProfileParameter.cs
- DateTimeFormatInfo.cs
- VectorConverter.cs
- InstalledVoice.cs
- JsonQueryStringConverter.cs
- NamespaceDisplay.xaml.cs
- XPathSelfQuery.cs
- FaultBookmark.cs
- LinqDataSourceStatusEventArgs.cs
- ServiceChannel.cs
- ListViewGroupItemCollection.cs
- NamespaceQuery.cs
- ConfigurationStrings.cs
- JsonWriterDelegator.cs
- RawAppCommandInputReport.cs
- SqlRowUpdatingEvent.cs
- NotSupportedException.cs
- Html32TextWriter.cs
- TimeSpanMinutesOrInfiniteConverter.cs
- WeakReadOnlyCollection.cs
- ValuePattern.cs
- FieldAccessException.cs
- DelegatedStream.cs
- MsmqIntegrationProcessProtocolHandler.cs
- OleDbConnectionFactory.cs
- ReadOnlyNameValueCollection.cs
- UpdateEventArgs.cs
- ControlIdConverter.cs
- ClientRolePrincipal.cs
- FixedNode.cs
- SymbolMethod.cs
- GregorianCalendarHelper.cs
- BindingContext.cs
- HierarchicalDataBoundControlAdapter.cs
- ConstraintStruct.cs
- CookieHandler.cs
- Slider.cs
- LinearGradientBrush.cs
- ImageCodecInfoPrivate.cs
- EntityTemplateUserControl.cs
- AspCompat.cs
- GroupLabel.cs
- BaseParser.cs
- EncoderExceptionFallback.cs
- AttributeXamlType.cs
- RepeatBehaviorConverter.cs
- SafeArchiveContext.cs
- EventDrivenDesigner.cs
- DescendantOverDescendantQuery.cs
- ipaddressinformationcollection.cs
- Polygon.cs
- ChangePassword.cs
- ColorTranslator.cs
- FixedTextContainer.cs
- SimpleLine.cs
- HtmlForm.cs
- WebPartEditorApplyVerb.cs
- XmlValidatingReader.cs
- SeparatorAutomationPeer.cs
- InheritedPropertyChangedEventArgs.cs