Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Core / CSharp / System / Windows / InterOp / Imaging.cs / 1305600 / Imaging.cs
//------------------------------------------------------------------------------ // Microsoft Avalon // Copyright (c) Microsoft Corporation, All Rights Reserved. // // File: Imaging.cs // //----------------------------------------------------------------------------- using System; using System.Security; using System.Security.Permissions; using MS.Internal; using System.Diagnostics; using System.Windows; using System.Windows.Media.Imaging; using Microsoft.Win32.SafeHandles; using MS.Internal.PresentationCore; // SecurityHelper using System.Windows.Interop; namespace System.Windows.Interop { ////// Managed/Unmanaged Interop for Imaging. /// public static class Imaging { ////// Construct an Bitmap from a HBITMAP. /// /// /// /// /// ////// Callers must have UnmanagedCode permission to call this API. /// ////// Critical - calls critical code, access unmanaged resources /// PublicOK - demands unmanaged code permission /// [SecurityCritical] unsafe public static BitmapSource CreateBitmapSourceFromHBitmap( IntPtr bitmap, IntPtr palette, Int32Rect sourceRect, BitmapSizeOptions sizeOptions) { SecurityHelper.DemandUnmanagedCode(); // CR: [....] (1681459) return CriticalCreateBitmapSourceFromHBitmap(bitmap, palette, sourceRect, sizeOptions, WICBitmapAlphaChannelOption.WICBitmapUseAlpha); } ////// Construct an Bitmap from a HBITMAP. /// /// /// /// /// /// ////// Critical - calls critical code, access unmanaged resources /// [SecurityCritical] unsafe internal static BitmapSource CriticalCreateBitmapSourceFromHBitmap( IntPtr bitmap, IntPtr palette, Int32Rect sourceRect, BitmapSizeOptions sizeOptions, WICBitmapAlphaChannelOption alphaOptions) { if (bitmap == IntPtr.Zero) { throw new ArgumentNullException("bitmap"); } return new InteropBitmap(bitmap, palette, sourceRect, sizeOptions, alphaOptions); // use the critical version } ////// Construct an Bitmap from a HICON. /// /// /// /// ////// Callers must have UnmanagedCode permission to call this API. /// ////// Critical - calls critical code, access unmanaged resources /// PublicOK - demands unmanaged code permission /// [SecurityCritical ] unsafe public static BitmapSource CreateBitmapSourceFromHIcon( IntPtr icon, Int32Rect sourceRect, BitmapSizeOptions sizeOptions) { SecurityHelper.DemandUnmanagedCode(); if (icon == IntPtr.Zero) { throw new ArgumentNullException("icon"); } return new InteropBitmap(icon, sourceRect, sizeOptions); } ////// Construct an Bitmap from a section handle. /// /// /// /// /// /// /// ////// Callers must have UnmanagedCode permission to call this API. /// ////// Critical - calls critical code, access unmanaged resources /// PublicOK - demands unmanaged code permission /// [SecurityCritical ] unsafe public static BitmapSource CreateBitmapSourceFromMemorySection( IntPtr section, int pixelWidth, int pixelHeight, Media.PixelFormat format, int stride, int offset) { SecurityHelper.DemandUnmanagedCode(); if (section == IntPtr.Zero) { throw new ArgumentNullException("section"); } return new InteropBitmap(section, pixelWidth, pixelHeight, format, stride, offset); } } } // 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
- XsdCachingReader.cs
- CodeSubDirectory.cs
- AllMembershipCondition.cs
- EndpointIdentityConverter.cs
- DBSqlParserColumnCollection.cs
- BuildProviderCollection.cs
- DefaultValidator.cs
- PEFileReader.cs
- ContentElement.cs
- DbConnectionClosed.cs
- EntityParameterCollection.cs
- Roles.cs
- StringReader.cs
- OletxVolatileEnlistment.cs
- DataBoundControlHelper.cs
- TypeSystemProvider.cs
- ListViewItemCollectionEditor.cs
- PhysicalOps.cs
- TimerElapsedEvenArgs.cs
- XmlSchemaDatatype.cs
- TemplateApplicationHelper.cs
- QilLoop.cs
- ConnectivityStatus.cs
- UpdateException.cs
- HMACSHA512.cs
- MetabaseSettingsIis7.cs
- SiteMapHierarchicalDataSourceView.cs
- ErrorWrapper.cs
- DoubleCollectionValueSerializer.cs
- DelayedRegex.cs
- FloaterParagraph.cs
- DebugInfoGenerator.cs
- DataGridViewCellPaintingEventArgs.cs
- List.cs
- Char.cs
- SqlDataSource.cs
- DecoderBestFitFallback.cs
- DrawingContext.cs
- PropertyMapper.cs
- ObjectAnimationUsingKeyFrames.cs
- DataGridViewCheckBoxColumn.cs
- CssStyleCollection.cs
- FormatterServices.cs
- HttpException.cs
- FunctionQuery.cs
- UnsafeNativeMethods.cs
- MultiBinding.cs
- Bits.cs
- DataServiceResponse.cs
- XmlDataImplementation.cs
- UmAlQuraCalendar.cs
- TransformPattern.cs
- ExpandableObjectConverter.cs
- TypeGeneratedEventArgs.cs
- ObjectViewFactory.cs
- PtsCache.cs
- MouseDevice.cs
- EdmSchemaError.cs
- HtmlTableRow.cs
- ChildrenQuery.cs
- Exceptions.cs
- CompositeControl.cs
- ConfigDefinitionUpdates.cs
- DrawingCollection.cs
- LexicalChunk.cs
- ListView.cs
- Encoder.cs
- HttpsChannelListener.cs
- ContentControl.cs
- PrtCap_Public_Simple.cs
- Pen.cs
- ManualResetEventSlim.cs
- FilterableAttribute.cs
- JsonStringDataContract.cs
- CombinedGeometry.cs
- TextElementCollection.cs
- ConfigurationSectionGroupCollection.cs
- CapabilitiesSection.cs
- MachineKey.cs
- ReadOnlyHierarchicalDataSource.cs
- UserControlCodeDomTreeGenerator.cs
- PtsPage.cs
- ClientWindowsAuthenticationMembershipProvider.cs
- SHA256Managed.cs
- DateBoldEvent.cs
- DataColumnPropertyDescriptor.cs
- TickBar.cs
- DatatypeImplementation.cs
- ControlAdapter.cs
- CapiHashAlgorithm.cs
- xmlglyphRunInfo.cs
- RankException.cs
- ArrangedElementCollection.cs
- OleDbCommand.cs
- BoundingRectTracker.cs
- COM2TypeInfoProcessor.cs
- NotificationContext.cs
- IgnoreSection.cs
- DataSourceProvider.cs
- SaveFileDialog.cs