Code:
/ DotNET / DotNET / 8.0 / untmp / 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 [....]
//---------------------------------------------------------------------------
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
- ControlDesignerState.cs
- FontDialog.cs
- panel.cs
- TextParagraph.cs
- ArrayExtension.cs
- ToolboxItemAttribute.cs
- IODescriptionAttribute.cs
- StorageTypeMapping.cs
- FixUp.cs
- counter.cs
- ToolStripItem.cs
- HttpException.cs
- RuntimeArgumentHandle.cs
- DataGridViewColumnDividerDoubleClickEventArgs.cs
- SqlUtil.cs
- FindCriteriaElement.cs
- ProfileProvider.cs
- HttpChannelFactory.cs
- CommonDialog.cs
- Variable.cs
- IgnoreFileBuildProvider.cs
- srgsitem.cs
- ImageListDesigner.cs
- NavigationService.cs
- BaseWebProxyFinder.cs
- ExpressionConverter.cs
- TextEditorContextMenu.cs
- SafeBitVector32.cs
- FragmentNavigationEventArgs.cs
- GenerateTemporaryAssemblyTask.cs
- ArrayList.cs
- TypeRefElement.cs
- PointHitTestParameters.cs
- DbConnectionPoolOptions.cs
- Activity.cs
- EncodingTable.cs
- Hashtable.cs
- GridView.cs
- InputScopeAttribute.cs
- DataSourceProvider.cs
- XmlSortKeyAccumulator.cs
- MenuItemStyleCollection.cs
- Italic.cs
- Rfc2898DeriveBytes.cs
- ForceCopyBuildProvider.cs
- ArgumentException.cs
- MachineKeyConverter.cs
- EncryptedData.cs
- DockPatternIdentifiers.cs
- EntityPropertyMappingAttribute.cs
- OleDbPermission.cs
- MethodExpression.cs
- CodeArgumentReferenceExpression.cs
- Expr.cs
- SymmetricKeyWrap.cs
- DrawingCollection.cs
- TextSegment.cs
- RenderContext.cs
- QueryContinueDragEvent.cs
- JsonFormatGeneratorStatics.cs
- StatusBar.cs
- ProfileService.cs
- ListBoxChrome.cs
- DES.cs
- FormViewPagerRow.cs
- Utilities.cs
- EventLogQuery.cs
- FixedDSBuilder.cs
- ClientConfigPaths.cs
- WindowsTooltip.cs
- CodePageUtils.cs
- METAHEADER.cs
- FormatVersion.cs
- SqlClientWrapperSmiStream.cs
- DataGridViewDataErrorEventArgs.cs
- HyperLinkField.cs
- PackagingUtilities.cs
- BmpBitmapDecoder.cs
- ObjectStateManager.cs
- FileNotFoundException.cs
- RectConverter.cs
- StatusBarItemAutomationPeer.cs
- Vector.cs
- Encoder.cs
- EventRecordWrittenEventArgs.cs
- StylusCaptureWithinProperty.cs
- TrackingServices.cs
- LogEntrySerializer.cs
- ServiceModelExtensionCollectionElement.cs
- UTF8Encoding.cs
- ArgumentDirectionHelper.cs
- Constraint.cs
- XmlNodeList.cs
- IMembershipProvider.cs
- PageParserFilter.cs
- XmlDataSource.cs
- RegularExpressionValidator.cs
- XmlWriterSettings.cs
- LinearGradientBrush.cs
- SqlGatherProducedAliases.cs