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
- XmlEventCache.cs
- ADMembershipUser.cs
- ReferenceList.cs
- SettingsPropertyNotFoundException.cs
- HostDesigntimeLicenseContext.cs
- RegexEditorDialog.cs
- TabItemAutomationPeer.cs
- HMACSHA1.cs
- HttpPostProtocolReflector.cs
- FaultDescription.cs
- DataServiceContext.cs
- IImplicitResourceProvider.cs
- ListViewUpdatedEventArgs.cs
- ObjectReaderCompiler.cs
- HttpWrapper.cs
- Types.cs
- StylusPointPropertyUnit.cs
- FileDialog.cs
- AccessDataSourceView.cs
- ControlPropertyNameConverter.cs
- ListViewPagedDataSource.cs
- PropertyGrid.cs
- OdbcFactory.cs
- HuffModule.cs
- ItemCheckedEvent.cs
- Literal.cs
- ErrorLog.cs
- Inline.cs
- NotFiniteNumberException.cs
- Dump.cs
- FileSystemWatcher.cs
- MasterPageParser.cs
- WindowCollection.cs
- XmlSchemaComplexContentExtension.cs
- SHA256.cs
- WebPartsPersonalization.cs
- FileDialog_Vista_Interop.cs
- PrintPageEvent.cs
- SessionState.cs
- ToolboxItemSnapLineBehavior.cs
- WebPartConnectionsConfigureVerb.cs
- ExpressionVisitorHelpers.cs
- FileChangesMonitor.cs
- CryptoApi.cs
- TagNameToTypeMapper.cs
- BlockUIContainer.cs
- MultitargetingHelpers.cs
- SqlAliaser.cs
- __Filters.cs
- VideoDrawing.cs
- SharedPersonalizationStateInfo.cs
- EventLogPermissionHolder.cs
- COM2EnumConverter.cs
- ColorContextHelper.cs
- ConnectionOrientedTransportChannelListener.cs
- ToolStripSplitStackLayout.cs
- SQLBytes.cs
- DllNotFoundException.cs
- SerializationStore.cs
- JpegBitmapDecoder.cs
- ContextDataSource.cs
- ProfileGroupSettings.cs
- ComboBoxAutomationPeer.cs
- TextViewSelectionProcessor.cs
- LinkConverter.cs
- SelectionRange.cs
- ErrorActivity.cs
- Matrix3DConverter.cs
- RedistVersionInfo.cs
- FixedDocumentSequencePaginator.cs
- MetadataItemSerializer.cs
- CodeSnippetCompileUnit.cs
- SmiXetterAccessMap.cs
- StructuralCache.cs
- CodeCompileUnit.cs
- DatePickerAutomationPeer.cs
- Transactions.cs
- GenericTypeParameterBuilder.cs
- GroupDescription.cs
- ActivityDesignerAccessibleObject.cs
- __Error.cs
- AppDomainAttributes.cs
- QilReplaceVisitor.cs
- SByte.cs
- DictionarySectionHandler.cs
- MiniMapControl.xaml.cs
- X509ClientCertificateCredentialsElement.cs
- SqlXml.cs
- SuppressMessageAttribute.cs
- AuthorizationSection.cs
- FieldNameLookup.cs
- SessionParameter.cs
- TableRow.cs
- LinkedResourceCollection.cs
- DataPagerFieldCollection.cs
- InternalsVisibleToAttribute.cs
- ReferenceTypeElement.cs
- ValidationErrorCollection.cs
- DataControlFieldHeaderCell.cs
- ScriptingAuthenticationServiceSection.cs