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
- ClientSponsor.cs
- OracleParameter.cs
- DPTypeDescriptorContext.cs
- DataGridViewToolTip.cs
- SqlGenerator.cs
- BindingCompleteEventArgs.cs
- TopClause.cs
- PropertySegmentSerializationProvider.cs
- HtmlDocument.cs
- ContentType.cs
- ReadOnlyDataSourceView.cs
- Site.cs
- SafeEventLogReadHandle.cs
- PageCache.cs
- ChtmlLinkAdapter.cs
- PriorityRange.cs
- SqlTriggerContext.cs
- Instrumentation.cs
- ClientScriptManagerWrapper.cs
- ToolStripOverflow.cs
- JsonQNameDataContract.cs
- XmlElementAttributes.cs
- ApplicationServiceHelper.cs
- SectionInput.cs
- SqlProviderManifest.cs
- DesignerForm.cs
- WebPartEditorCancelVerb.cs
- ImportContext.cs
- DynamicMethod.cs
- HtmlInputReset.cs
- X509AsymmetricSecurityKey.cs
- _SSPIWrapper.cs
- BackStopAuthenticationModule.cs
- MatrixTransform3D.cs
- ActivityMarkupSerializer.cs
- Comparer.cs
- Validator.cs
- WebZone.cs
- ParameterModifier.cs
- ConfigurationManagerHelper.cs
- XmlEntityReference.cs
- propertytag.cs
- DataGridViewRowConverter.cs
- ArrayElementGridEntry.cs
- ResolveResponseInfo.cs
- Stroke2.cs
- CFGGrammar.cs
- CodeDirectoryCompiler.cs
- SplitterCancelEvent.cs
- CloseCollectionAsyncResult.cs
- RoutingChannelExtension.cs
- DataTableCollection.cs
- ADRoleFactory.cs
- HostProtectionPermission.cs
- WebContext.cs
- DesignTable.cs
- GcHandle.cs
- Cursor.cs
- RemoteWebConfigurationHost.cs
- Int64AnimationUsingKeyFrames.cs
- SEHException.cs
- InfocardInteractiveChannelInitializer.cs
- RotateTransform3D.cs
- LineServices.cs
- AnnotationComponentChooser.cs
- ClassDataContract.cs
- AppSettingsExpressionBuilder.cs
- BufferedGraphicsManager.cs
- ToolStripManager.cs
- TabControlAutomationPeer.cs
- MetadataSet.cs
- XmlSchemaParticle.cs
- RepeatButton.cs
- AttributeTableBuilder.cs
- ProxyWebPartManager.cs
- FixedSOMGroup.cs
- PrimitiveDataContract.cs
- DataGridState.cs
- Line.cs
- baseaxisquery.cs
- QilExpression.cs
- NamedPipeChannelListener.cs
- ScrollBar.cs
- TextTreeRootTextBlock.cs
- SoapFaultCodes.cs
- ProcessRequestArgs.cs
- X509UI.cs
- HostSecurityManager.cs
- XslCompiledTransform.cs
- DataBoundControlAdapter.cs
- AngleUtil.cs
- BlurBitmapEffect.cs
- CorrelationActionMessageFilter.cs
- HopperCache.cs
- SectionUpdates.cs
- LookupBindingPropertiesAttribute.cs
- DbException.cs
- BidOverLoads.cs
- Calendar.cs
- ForEachAction.cs