Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Core / System / Windows / InterOp / Imaging.cs / 2 / 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
- Help.cs
- OracleMonthSpan.cs
- TableRow.cs
- XsdValidatingReader.cs
- DataSetViewSchema.cs
- IpcServerChannel.cs
- ObjectContextServiceProvider.cs
- entityreference_tresulttype.cs
- httpapplicationstate.cs
- ResolvedKeyFrameEntry.cs
- EditorPart.cs
- BridgeDataReader.cs
- TreeBuilder.cs
- SystemUdpStatistics.cs
- SQLStringStorage.cs
- CodeExpressionStatement.cs
- CodeNamespaceImportCollection.cs
- ClientScriptManagerWrapper.cs
- Normalization.cs
- ThicknessAnimation.cs
- SqlConnectionPoolProviderInfo.cs
- PerfCounterSection.cs
- LockRenewalTask.cs
- SecureStringHasher.cs
- EventLogConfiguration.cs
- IntegerValidatorAttribute.cs
- HttpDebugHandler.cs
- ControllableStoryboardAction.cs
- Bold.cs
- OdbcCommandBuilder.cs
- parserscommon.cs
- PageWrapper.cs
- CodeDirectionExpression.cs
- HMAC.cs
- XmlSchemaSet.cs
- XmlSchemaProviderAttribute.cs
- WebServiceClientProxyGenerator.cs
- MessagePropertyFilter.cs
- FixedLineResult.cs
- ServiceChannelManager.cs
- IsolatedStorageFileStream.cs
- WebPageTraceListener.cs
- List.cs
- SmtpNetworkElement.cs
- SqlDataSourceFilteringEventArgs.cs
- CompilerGeneratedAttribute.cs
- Documentation.cs
- HtmlMeta.cs
- HtmlMeta.cs
- ReaderWriterLockWrapper.cs
- SoapSchemaMember.cs
- HttpGetProtocolReflector.cs
- TimeSpanFormat.cs
- SponsorHelper.cs
- XmlDigitalSignatureProcessor.cs
- GlyphTypeface.cs
- ConnectionsZone.cs
- TokenBasedSet.cs
- StatusBarDrawItemEvent.cs
- ProtectedProviderSettings.cs
- DataControlButton.cs
- AQNBuilder.cs
- ServiceModelConfigurationElementCollection.cs
- DetailsView.cs
- Viewport3DAutomationPeer.cs
- BamlResourceDeserializer.cs
- GraphicsContainer.cs
- ExpressionCopier.cs
- Nullable.cs
- HtmlElementEventArgs.cs
- MissingMethodException.cs
- DbProviderConfigurationHandler.cs
- PointValueSerializer.cs
- ComboBoxAutomationPeer.cs
- XmlNamedNodeMap.cs
- xmlsaver.cs
- CodeTypeParameter.cs
- FolderBrowserDialogDesigner.cs
- PathHelper.cs
- ScriptRegistrationManager.cs
- PageThemeBuildProvider.cs
- EntityCollectionChangedParams.cs
- ConfigurationValue.cs
- Environment.cs
- XmlSchemaAnyAttribute.cs
- SerTrace.cs
- SqlConnectionHelper.cs
- ListControl.cs
- SingleAnimation.cs
- FixedSOMFixedBlock.cs
- ExceptionNotification.cs
- DictionaryCustomTypeDescriptor.cs
- TimeSpan.cs
- HierarchicalDataSourceIDConverter.cs
- Debug.cs
- UrlMappingsModule.cs
- CompiledXpathExpr.cs
- RecognizerInfo.cs
- FilteredSchemaElementLookUpTable.cs
- SvcMapFile.cs