Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / CompMod / Microsoft / Win32 / SafeHandles / SafeLibraryHandle.cs / 1 / SafeLibraryHandle.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================ ** ** Class: SafeLibraryHandle ** **Author: David Gutierrez ([....]) ** ** A wrapper for a library handles ** ** Date: July 8, 2002 ** ===========================================================*/ using System; using System.Security; using System.Security.Permissions; using System.Runtime.InteropServices; using System.Runtime.CompilerServices; using Microsoft.Win32; using Microsoft.Win32.SafeHandles; using System.Runtime.ConstrainedExecution; namespace Microsoft.Win32.SafeHandles { [HostProtectionAttribute(MayLeakOnAbort = true)] [SuppressUnmanagedCodeSecurityAttribute] internal sealed class SafeLibraryHandle : SafeHandleZeroOrMinusOneIsInvalid { // Note that LoadLibraryEx returns 0 on failure internal SafeLibraryHandle() : base(true) {} [DllImport(ExternDll.Kernel32, CharSet=System.Runtime.InteropServices.CharSet.Unicode, SetLastError=true)] internal static extern SafeLibraryHandle LoadLibraryEx(string libFilename, IntPtr reserved, int flags); [DllImport(ExternDll.Kernel32, CharSet=System.Runtime.InteropServices.CharSet.Unicode)] [ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)] private static extern bool FreeLibrary(IntPtr hModule); override protected bool ReleaseHandle() { return FreeLibrary(handle); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================ ** ** Class: SafeLibraryHandle ** **Author: David Gutierrez ([....]) ** ** A wrapper for a library handles ** ** Date: July 8, 2002 ** ===========================================================*/ using System; using System.Security; using System.Security.Permissions; using System.Runtime.InteropServices; using System.Runtime.CompilerServices; using Microsoft.Win32; using Microsoft.Win32.SafeHandles; using System.Runtime.ConstrainedExecution; namespace Microsoft.Win32.SafeHandles { [HostProtectionAttribute(MayLeakOnAbort = true)] [SuppressUnmanagedCodeSecurityAttribute] internal sealed class SafeLibraryHandle : SafeHandleZeroOrMinusOneIsInvalid { // Note that LoadLibraryEx returns 0 on failure internal SafeLibraryHandle() : base(true) {} [DllImport(ExternDll.Kernel32, CharSet=System.Runtime.InteropServices.CharSet.Unicode, SetLastError=true)] internal static extern SafeLibraryHandle LoadLibraryEx(string libFilename, IntPtr reserved, int flags); [DllImport(ExternDll.Kernel32, CharSet=System.Runtime.InteropServices.CharSet.Unicode)] [ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)] private static extern bool FreeLibrary(IntPtr hModule); override protected bool ReleaseHandle() { return FreeLibrary(handle); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- MSAAEventDispatcher.cs
- DataGridViewTextBoxEditingControl.cs
- CannotUnloadAppDomainException.cs
- RelationshipDetailsRow.cs
- MsmqInputMessage.cs
- HttpWriter.cs
- PowerModeChangedEventArgs.cs
- XmlSchemaSet.cs
- Stopwatch.cs
- _Connection.cs
- XmlWellformedWriter.cs
- DragDropHelper.cs
- MenuItemStyle.cs
- IDQuery.cs
- WebControlParameterProxy.cs
- DataColumnMapping.cs
- ExecutedRoutedEventArgs.cs
- Guid.cs
- WebControl.cs
- SignatureResourcePool.cs
- ParallelTimeline.cs
- base64Transforms.cs
- DynamicILGenerator.cs
- FormView.cs
- XPathSingletonIterator.cs
- ExceptQueryOperator.cs
- ImageKeyConverter.cs
- Utils.cs
- MsmqInputSessionChannel.cs
- BindingSource.cs
- ObjectFullSpanRewriter.cs
- NumericPagerField.cs
- DataGridViewCellStyleChangedEventArgs.cs
- MorphHelpers.cs
- XmlIlVisitor.cs
- TrustLevel.cs
- StreamUpdate.cs
- RightsManagementUser.cs
- SvcMapFileSerializer.cs
- WS2007HttpBindingCollectionElement.cs
- PolyLineSegment.cs
- MenuItem.cs
- TextElementAutomationPeer.cs
- ThreadSafeMessageFilterTable.cs
- CachedFontFamily.cs
- QilFunction.cs
- ConnectionManagementElement.cs
- RequestUriProcessor.cs
- HttpChannelListener.cs
- DataListItemCollection.cs
- StorageScalarPropertyMapping.cs
- SchemaExporter.cs
- ScriptRegistrationManager.cs
- ProjectionPlanCompiler.cs
- ModuleConfigurationInfo.cs
- ProtocolReflector.cs
- FrameworkEventSource.cs
- BulletDecorator.cs
- DynamicDiscoSearcher.cs
- CfgParser.cs
- SortedDictionary.cs
- SamlDelegatingWriter.cs
- SettingsContext.cs
- WebPartEventArgs.cs
- Variant.cs
- CollectionViewProxy.cs
- XmlSchemaCollection.cs
- DesignerHost.cs
- UnsafeNativeMethods.cs
- FrameworkElement.cs
- WebScriptEnablingBehavior.cs
- ArrayWithOffset.cs
- COM2TypeInfoProcessor.cs
- XPathBuilder.cs
- FreezableOperations.cs
- TemplateAction.cs
- RootNamespaceAttribute.cs
- PointLightBase.cs
- EntityWrapper.cs
- FixedSOMPage.cs
- SectionVisual.cs
- odbcmetadatacolumnnames.cs
- CurrentTimeZone.cs
- ServiceHostingEnvironmentSection.cs
- SQLInt32.cs
- GenericWebPart.cs
- SrgsOneOf.cs
- DataContractSerializerServiceBehavior.cs
- HttpHandler.cs
- FixedSchema.cs
- TrackingProfile.cs
- ViewUtilities.cs
- SR.cs
- basecomparevalidator.cs
- FontConverter.cs
- IndependentAnimationStorage.cs
- TableCellAutomationPeer.cs
- BulletDecorator.cs
- HostingPreferredMapPath.cs
- XslVisitor.cs