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
- SingleQueryOperator.cs
- GlyphCache.cs
- SqlMethods.cs
- DefaultBindingPropertyAttribute.cs
- ChtmlTextWriter.cs
- SQLMembershipProvider.cs
- ProfileGroupSettingsCollection.cs
- EmptyElement.cs
- ProtocolsConfiguration.cs
- WebControl.cs
- ResourceAttributes.cs
- TransformerTypeCollection.cs
- StrokeCollectionDefaultValueFactory.cs
- Int32Collection.cs
- SecurityUtils.cs
- KeyNotFoundException.cs
- DeferredReference.cs
- InputReport.cs
- ButtonPopupAdapter.cs
- FixedHighlight.cs
- HMACSHA384.cs
- ComplexTypeEmitter.cs
- DataSet.cs
- VirtualPathProvider.cs
- _SslStream.cs
- NonClientArea.cs
- TagPrefixInfo.cs
- Type.cs
- FormatSettings.cs
- OneOf.cs
- DataQuery.cs
- FullTextLine.cs
- DataException.cs
- TextSelectionProcessor.cs
- RegisteredExpandoAttribute.cs
- WindowsServiceElement.cs
- SegmentInfo.cs
- UserCancellationException.cs
- ElementUtil.cs
- CodeTypeReferenceCollection.cs
- __Filters.cs
- ComAdminWrapper.cs
- QilParameter.cs
- DataGridViewTopRowAccessibleObject.cs
- LinqDataSourceValidationException.cs
- DnsPermission.cs
- WebPartVerbCollection.cs
- DataGridViewColumnDividerDoubleClickEventArgs.cs
- TcpStreams.cs
- DependsOnAttribute.cs
- GetTokenRequest.cs
- HandleScope.cs
- SearchForVirtualItemEventArgs.cs
- SystemUnicastIPAddressInformation.cs
- TextUtf8RawTextWriter.cs
- ListBindingConverter.cs
- HttpStaticObjectsCollectionBase.cs
- SizeConverter.cs
- PopOutPanel.cs
- MatrixAnimationUsingKeyFrames.cs
- AnnotationMap.cs
- WebMessageFormatHelper.cs
- AccessedThroughPropertyAttribute.cs
- BindingList.cs
- ItemPager.cs
- UnsafeNativeMethods.cs
- ApplicationServicesHostFactory.cs
- RestHandlerFactory.cs
- UnsafeNativeMethods.cs
- OdbcConnectionPoolProviderInfo.cs
- DynamicDocumentPaginator.cs
- PasswordDeriveBytes.cs
- SymmetricCryptoHandle.cs
- SecurityTimestamp.cs
- SafeNativeMethods.cs
- RectValueSerializer.cs
- SmtpDigestAuthenticationModule.cs
- TypeEnumerableViewSchema.cs
- MDIClient.cs
- VoiceSynthesis.cs
- AvTraceFormat.cs
- CheckedPointers.cs
- EncodingInfo.cs
- recordstate.cs
- HotSpotCollection.cs
- FontDialog.cs
- XmlTypeAttribute.cs
- XmlILIndex.cs
- SymbolType.cs
- ConstructorExpr.cs
- SecurityState.cs
- ClusterRegistryConfigurationProvider.cs
- RemotingClientProxy.cs
- BaseDataList.cs
- SoapAttributes.cs
- FrugalList.cs
- CommandManager.cs
- WindowsAuthenticationModule.cs
- CriticalHandle.cs
- XMLUtil.cs