Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / ndp / clr / src / BCL / Microsoft / Win32 / SafeHandles / SafeRegistryHandle.cs / 1 / SafeRegistryHandle.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================ ** ** Class: SafeRegistryHandle ** ** ** A wrapper for registry handles ** ** ===========================================================*/ using System; using System.Security; using System.Security.Permissions; using System.Runtime.InteropServices; using System.Runtime.CompilerServices; using System.Runtime.ConstrainedExecution; namespace Microsoft.Win32.SafeHandles { internal sealed class SafeRegistryHandle : SafeHandleZeroOrMinusOneIsInvalid { // Note: Officially -1 is the recommended invalid handle value for // registry keys, but we'll also get back 0 as an invalid handle from // RegOpenKeyEx. [SecurityPermission(SecurityAction.LinkDemand, UnmanagedCode=true)] internal SafeRegistryHandle() : base(true) {} [SecurityPermission(SecurityAction.LinkDemand, UnmanagedCode=true)] internal SafeRegistryHandle(IntPtr preexistingHandle, bool ownsHandle) : base(ownsHandle) { SetHandle(preexistingHandle); } [DllImport(Win32Native.ADVAPI32), SuppressUnmanagedCodeSecurity, ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)] private static extern int RegCloseKey(IntPtr hKey); override protected bool ReleaseHandle() { // Returns a Win32 error code, 0 for success int r = RegCloseKey(handle); return r == 0; } } } // 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
- Publisher.cs
- ListSortDescriptionCollection.cs
- PrintPreviewGraphics.cs
- EventArgs.cs
- SqlTypeSystemProvider.cs
- CultureInfo.cs
- PartitionResolver.cs
- TagMapCollection.cs
- StopStoryboard.cs
- FastEncoderStatics.cs
- SynchronousChannelMergeEnumerator.cs
- XmlDocumentFragment.cs
- Monitor.cs
- TreeNodeBinding.cs
- FixedSOMPageElement.cs
- EnterpriseServicesHelper.cs
- EventPrivateKey.cs
- objectquery_tresulttype.cs
- OracleSqlParser.cs
- DialogBaseForm.cs
- HttpStaticObjectsCollectionWrapper.cs
- FontInfo.cs
- XmlLinkedNode.cs
- sqlinternaltransaction.cs
- BitmapEffectCollection.cs
- EntityReference.cs
- ProvidePropertyAttribute.cs
- GridPattern.cs
- TabPanel.cs
- CollectionContainer.cs
- ClientSideProviderDescription.cs
- GreenMethods.cs
- MergablePropertyAttribute.cs
- COM2IDispatchConverter.cs
- InvalidCommandTreeException.cs
- DataRowIndexBuffer.cs
- ControlAdapter.cs
- InputLanguageManager.cs
- XamlReader.cs
- BackgroundFormatInfo.cs
- IdentityValidationException.cs
- ExtendedProperty.cs
- StackSpiller.Temps.cs
- XmlAutoDetectWriter.cs
- PolicyManager.cs
- basevalidator.cs
- TrackingValidationObjectDictionary.cs
- StringFormat.cs
- Transform.cs
- DeferredElementTreeState.cs
- ADConnectionHelper.cs
- TraceHwndHost.cs
- securestring.cs
- PrintPageEvent.cs
- SqlGenericUtil.cs
- SynchronizationContext.cs
- SaveFileDialog.cs
- BaseParagraph.cs
- DifferencingCollection.cs
- RequestSecurityTokenResponse.cs
- ClickablePoint.cs
- XdrBuilder.cs
- HttpEncoder.cs
- AssertSection.cs
- ArrayList.cs
- GridViewHeaderRowPresenter.cs
- CompositeCollectionView.cs
- DataGridViewIntLinkedList.cs
- GiveFeedbackEventArgs.cs
- TextBlockAutomationPeer.cs
- HtmlCalendarAdapter.cs
- WebPartPersonalization.cs
- SchemaNamespaceManager.cs
- TabControlAutomationPeer.cs
- DecoderFallbackWithFailureFlag.cs
- WebPartUserCapability.cs
- Queue.cs
- WizardStepCollectionEditor.cs
- WebServiceParameterData.cs
- Certificate.cs
- BuildTopDownAttribute.cs
- ExceptionList.cs
- ModifiableIteratorCollection.cs
- _NetworkingPerfCounters.cs
- ArraySortHelper.cs
- ReferenceSchema.cs
- XmlBaseWriter.cs
- TextEffectResolver.cs
- PriorityRange.cs
- HttpRequest.cs
- ComplusEndpointConfigContainer.cs
- PackWebResponse.cs
- HandledEventArgs.cs
- PopupControlService.cs
- GatewayDefinition.cs
- ConnectionInterfaceCollection.cs
- WebPartConnectionsConnectVerb.cs
- unsafenativemethodstextservices.cs
- InputScope.cs
- Style.cs