Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / System / Design / SafeNativeMethods.cs / 2 / SafeNativeMethods.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Design { using System.Runtime.InteropServices; using System; using System.Security.Permissions; using System.Collections; using System.IO; using System.Text; [ System.Security.SuppressUnmanagedCodeSecurityAttribute() ] internal static class SafeNativeMethods { [DllImport(ExternDll.Gdi32, SetLastError=true, ExactSpelling=true, EntryPoint="DeleteObject", CharSet=System.Runtime.InteropServices.CharSet.Auto)] public static extern bool DeleteObject(HandleRef hObject); [DllImport(ExternDll.User32, ExactSpelling=true, CharSet=System.Runtime.InteropServices.CharSet.Auto)] public static extern int GetMessagePos(); [DllImport(ExternDll.User32, CharSet=System.Runtime.InteropServices.CharSet.Auto)] public static extern int RegisterWindowMessage(string msg); [DllImport(ExternDll.Gdi32, CharSet=System.Runtime.InteropServices.CharSet.Auto)] public static extern bool GetTextMetrics(HandleRef hdc, NativeMethods.TEXTMETRIC tm); [DllImport(ExternDll.Gdi32, ExactSpelling=true, CharSet=System.Runtime.InteropServices.CharSet.Auto)] public static extern bool BitBlt(IntPtr hDC,int x,int y,int nWidth,int nHeight,IntPtr hSrcDC,int xSrc,int ySrc,int dwRop); [DllImport(ExternDll.Gdi32, ExactSpelling=true, CharSet=System.Runtime.InteropServices.CharSet.Auto)] public static extern IntPtr CreateSolidBrush(int crColor); [DllImport(ExternDll.User32, CharSet=System.Runtime.InteropServices.CharSet.Auto)] public static extern int GetWindowTextLength(HandleRef hWnd); [DllImport(ExternDll.Kernel32, ExactSpelling=true, CharSet=System.Runtime.InteropServices.CharSet.Auto)] public static extern int GetTickCount(); [DllImport(ExternDll.User32, ExactSpelling=true, CharSet=System.Runtime.InteropServices.CharSet.Auto)] public static extern bool RedrawWindow(IntPtr hwnd, NativeMethods.COMRECT rcUpdate, IntPtr hrgnUpdate, int flags); [DllImport(ExternDll.User32, ExactSpelling=true, CharSet=System.Runtime.InteropServices.CharSet.Auto)] public static extern bool SetWindowPos(IntPtr hWnd, IntPtr hWndInsertAfter, int x, int y, int cx, int cy, int flags); [DllImport(ExternDll.User32, CharSet=System.Runtime.InteropServices.CharSet.Auto)] public static extern int DrawText(HandleRef hDC, string lpszString, int nCount, ref NativeMethods.RECT lpRect, int nFormat); [DllImport(ExternDll.Gdi32, ExactSpelling=true, CharSet=System.Runtime.InteropServices.CharSet.Auto)] public static extern IntPtr SelectObject(HandleRef hDC, HandleRef hObject); [DllImport(ExternDll.User32, ExactSpelling=true, CharSet=System.Runtime.InteropServices.CharSet.Auto)] public extern static bool IsChild(HandleRef parent, HandleRef child); // this is a wrapper that comctl exposes for the NT function since it doesn't exist natively on 95. [DllImport(ExternDll.Comctl32, ExactSpelling=true)] private static extern bool _TrackMouseEvent(NativeMethods.TRACKMOUSEEVENT tme); public static bool TrackMouseEvent(NativeMethods.TRACKMOUSEEVENT tme) { // only on NT - not on 95 - comctl32 has a wrapper for 95 and NT. return _TrackMouseEvent(tme); } [DllImport(ExternDll.Kernel32, ExactSpelling=true, CharSet=System.Runtime.InteropServices.CharSet.Auto)] public static extern int GetCurrentProcessId(); [DllImport(ExternDll.Gdi32, ExactSpelling=true, CharSet=CharSet.Auto)] public static extern bool RoundRect(HandleRef hDC, int left, int top, int right, int bottom, int width, int height); [DllImport(ExternDll.Gdi32, ExactSpelling=true, CharSet=CharSet.Auto)] public static extern bool Rectangle(HandleRef hdc, int left, int top, int right, int bottom); [DllImport(ExternDll.Gdi32, ExactSpelling=true, EntryPoint="CreatePen", CharSet=System.Runtime.InteropServices.CharSet.Auto)] private static extern IntPtr IntCreatePen(int nStyle, int nWidth, int crColor); public static IntPtr CreatePen(int nStyle, int nWidth, int crColor) { return System.Internal.HandleCollector.Add(IntCreatePen(nStyle, nWidth, crColor), NativeMethods.CommonHandles.GDI); } //--------Added because of VSWhidbey 581670----------------------------------------------------- // Investigate removing this if the duplicate code in OleDragDropHandler.cs is removed [DllImport(ExternDll.Gdi32, SetLastError = true, ExactSpelling = true, CharSet = System.Runtime.InteropServices.CharSet.Auto)] public static extern int SetROP2(HandleRef hDC, int nDrawMode); [DllImport(ExternDll.Gdi32, SetLastError = true, ExactSpelling = true, CharSet = System.Runtime.InteropServices.CharSet.Auto)] public static extern int SetBkColor(HandleRef hDC, int clr); //--------Added because of VSWhidbey 581670----------------------------------------------------- //[....] Nov 1, 2004: Removed /* [DllImport(ExternDll.Gdi32, ExactSpelling=true, CharSet=CharSet.Auto)] public static extern bool Ellipse(HandleRef hDC, int left, int top, int right, int bottom); [DllImport(ExternDll.User32, ExactSpelling=true, CharSet=CharSet.Auto)] public static extern IntPtr GetSysColorBrush(int nIndex); [DllImport(ExternDll.User32, ExactSpelling=true, CharSet=System.Runtime.InteropServices.CharSet.Auto)] public static extern bool MessageBeep(int type); [DllImport(ExternDll.User32, ExactSpelling=true, CharSet=System.Runtime.InteropServices.CharSet.Auto)] public static extern bool RedrawWindow(IntPtr hwnd, ref NativeMethods.RECT rcUpdate, IntPtr hrgnUpdate, int flags); */ } } // 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
- PrintDialog.cs
- SerializerProvider.cs
- DynamicPropertyReader.cs
- SmtpNegotiateAuthenticationModule.cs
- TraceHandler.cs
- DataSpaceManager.cs
- SafeCloseHandleCritical.cs
- OutOfProcStateClientManager.cs
- DataGridHeadersVisibilityToVisibilityConverter.cs
- DataSvcMapFileSerializer.cs
- TypeBuilder.cs
- HebrewNumber.cs
- ThreadStaticAttribute.cs
- ProfileSettingsCollection.cs
- VirtualPath.cs
- Panel.cs
- ColorConvertedBitmapExtension.cs
- ExtensionQuery.cs
- sqlpipe.cs
- EntityConnectionStringBuilderItem.cs
- QueryCacheManager.cs
- SessionChannels.cs
- Transform3D.cs
- AlignmentXValidation.cs
- SQLGuidStorage.cs
- ConfigurationManager.cs
- XamlInt32CollectionSerializer.cs
- CategoryAttribute.cs
- ApplicationId.cs
- ContainerVisual.cs
- Compiler.cs
- CatalogPartCollection.cs
- RequestStatusBarUpdateEventArgs.cs
- SspiNegotiationTokenAuthenticatorState.cs
- RegexFCD.cs
- ExtractedStateEntry.cs
- SharedDp.cs
- Int32RectConverter.cs
- SoapEnvelopeProcessingElement.cs
- SerialErrors.cs
- HitTestWithPointDrawingContextWalker.cs
- TemplateAction.cs
- WindowsPrincipal.cs
- ListItem.cs
- ScrollEvent.cs
- MultiTouchSystemGestureLogic.cs
- DrawingImage.cs
- PeekCompletedEventArgs.cs
- WinCategoryAttribute.cs
- CompiledQueryCacheEntry.cs
- SchemaType.cs
- SQLChars.cs
- CompositeDataBoundControl.cs
- WebPartTransformerCollection.cs
- PointKeyFrameCollection.cs
- ActionItem.cs
- DataServiceRequest.cs
- MarkupCompilePass1.cs
- WorkflowApplicationException.cs
- XmlSerializerAssemblyAttribute.cs
- RC2CryptoServiceProvider.cs
- FontResourceCache.cs
- TextBox.cs
- IgnorePropertiesAttribute.cs
- PolyLineSegmentFigureLogic.cs
- ProgramNode.cs
- ResourceAttributes.cs
- ElementsClipboardData.cs
- RichTextBoxAutomationPeer.cs
- BuildProvider.cs
- Rotation3DKeyFrameCollection.cs
- Accessible.cs
- SystemDropShadowChrome.cs
- AlphabeticalEnumConverter.cs
- DateTimeSerializationSection.cs
- ListViewInsertedEventArgs.cs
- XappLauncher.cs
- HttpCacheParams.cs
- DrawingAttributes.cs
- ExtenderHelpers.cs
- ListControl.cs
- NavigationWindow.cs
- DBAsyncResult.cs
- ConfigurationException.cs
- SendSecurityHeaderElement.cs
- GradientPanel.cs
- SessionParameter.cs
- DependencyPropertyKey.cs
- XmlSchemaSimpleType.cs
- ValueTypeFieldReference.cs
- Stroke.cs
- SqlRemoveConstantOrderBy.cs
- TimeSpanMinutesConverter.cs
- FormatterServices.cs
- WebReferenceOptions.cs
- DefinitionUpdate.cs
- SurrogateChar.cs
- ReflectionPermission.cs
- Calendar.cs
- BrowserInteropHelper.cs