Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / Tools / WSATConfig / Configuration / SafeLocalAllocation.cs / 1305376 / SafeLocalAllocation.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace Microsoft.Tools.ServiceModel.WsatConfig { using System; using System.Security; using System.Security.Permissions; using System.Runtime.InteropServices; using System.Runtime.CompilerServices; using System.Runtime.ConstrainedExecution; using Microsoft.Win32.SafeHandles; sealed class SafeLocalAllocation : SafeHandleZeroOrMinusOneIsInvalid { [SecurityPermission(SecurityAction.LinkDemand, UnmanagedCode = true)] internal SafeLocalAllocation(int size) : base(true) { #pragma warning suppress 56523 IntPtr pointer = SafeNativeMethods.LocalAlloc(SafeNativeMethods.LMEM_ZEROINIT, size); SetHandle(pointer); } #if WSAT_UI [SecurityPermission(SecurityAction.LinkDemand, UnmanagedCode = true)] internal SafeLocalAllocation(object source) : base(true) { #pragma warning suppress 56523 IntPtr pointer = SafeNativeMethods.LocalAlloc(SafeNativeMethods.LMEM_ZEROINIT, Marshal.SizeOf(source)); SetHandle(pointer); Marshal.StructureToPtr( source, handle, false); } #endif internal void Copy(byte[] source, int startIndex, int count) { System.Runtime.InteropServices.Marshal.Copy( source, startIndex, handle, count); } protected override bool ReleaseHandle() { #pragma warning suppress 56523 IntPtr r = SafeNativeMethods.LocalFree(handle); return r == IntPtr.Zero; } } } // 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
- FieldMetadata.cs
- FastPropertyAccessor.cs
- metadatamappinghashervisitor.cs
- Camera.cs
- input.cs
- FormsAuthenticationCredentials.cs
- QilGenerator.cs
- EnumType.cs
- PageContentAsyncResult.cs
- HyperLinkField.cs
- NumberFormatter.cs
- BinaryMethodMessage.cs
- BypassElement.cs
- SQLCharsStorage.cs
- SimpleTextLine.cs
- ToolboxItemAttribute.cs
- VariableValue.cs
- Pointer.cs
- FactoryGenerator.cs
- UDPClient.cs
- DataServiceRequestArgs.cs
- ByteAnimationUsingKeyFrames.cs
- ObjectDataSourceMethodEventArgs.cs
- VectorCollectionValueSerializer.cs
- X509ClientCertificateAuthenticationElement.cs
- HttpHeaderCollection.cs
- BamlResourceDeserializer.cs
- LogArchiveSnapshot.cs
- SafeBitVector32.cs
- BasicCellRelation.cs
- SmtpTransport.cs
- hresults.cs
- EntitySetBaseCollection.cs
- KeyGestureValueSerializer.cs
- CompositeFontParser.cs
- AnchoredBlock.cs
- BehaviorDragDropEventArgs.cs
- RectangleHotSpot.cs
- TemplatedEditableDesignerRegion.cs
- CodeTypeParameter.cs
- DataControlPagerLinkButton.cs
- DataTableNewRowEvent.cs
- CachedPathData.cs
- MobileControlsSectionHandler.cs
- ContentIterators.cs
- XmlILStorageConverter.cs
- ToolTipService.cs
- NetMsmqBindingElement.cs
- PrtCap_Public.cs
- WrapperEqualityComparer.cs
- TrackingValidationObjectDictionary.cs
- AggregateException.cs
- TrackingStringDictionary.cs
- IndexingContentUnit.cs
- UpnEndpointIdentity.cs
- ModifierKeysValueSerializer.cs
- SafeProcessHandle.cs
- ErrorsHelper.cs
- ScriptIgnoreAttribute.cs
- TableLayoutStyleCollection.cs
- AuthenticationManager.cs
- LockedAssemblyCache.cs
- PhysicalAddress.cs
- ArraySortHelper.cs
- SocketSettings.cs
- FormsAuthenticationUserCollection.cs
- PropertyEmitterBase.cs
- StatusBarAutomationPeer.cs
- XmlNamespaceMappingCollection.cs
- XmlSchemaIdentityConstraint.cs
- CodeDOMUtility.cs
- ConversionValidationRule.cs
- XmlReaderSettings.cs
- UnsafeNativeMethods.cs
- ConfigurationSettings.cs
- ProfileService.cs
- ColorConvertedBitmapExtension.cs
- OracleBoolean.cs
- XmlSchemaSequence.cs
- AttributeEmitter.cs
- WebServiceFaultDesigner.cs
- DispatcherObject.cs
- ScrollEvent.cs
- TargetParameterCountException.cs
- PersonalizablePropertyEntry.cs
- Drawing.cs
- Size3D.cs
- ImportCatalogPart.cs
- OutKeywords.cs
- InternalTransaction.cs
- ListSourceHelper.cs
- OracleCommandBuilder.cs
- CodeCompiler.cs
- TransformValueSerializer.cs
- SchemeSettingElementCollection.cs
- ContentFileHelper.cs
- BypassElementCollection.cs
- Soap12FormatExtensions.cs
- BinaryExpression.cs
- HashCodeCombiner.cs