Code:
/ FX-1434 / FX-1434 / 1.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
- DecimalConverter.cs
- ProtectedProviderSettings.cs
- InsufficientExecutionStackException.cs
- XmlKeywords.cs
- ByteStream.cs
- CapabilitiesUse.cs
- ComponentRenameEvent.cs
- HelpProvider.cs
- FixedTextPointer.cs
- InfocardExtendedInformationEntry.cs
- filewebresponse.cs
- HttpProfileGroupBase.cs
- CatalogZoneBase.cs
- SetStateEventArgs.cs
- BadImageFormatException.cs
- AttributeSetAction.cs
- VirtualPathUtility.cs
- StaticSiteMapProvider.cs
- Soap12ProtocolReflector.cs
- Error.cs
- DirectoryInfo.cs
- ScriptResourceMapping.cs
- BaseProcessor.cs
- DocumentXmlWriter.cs
- OnOperation.cs
- NavigationFailedEventArgs.cs
- ToolStripKeyboardHandlingService.cs
- BaseServiceProvider.cs
- RtfControlWordInfo.cs
- UIElementHelper.cs
- TypeConverterHelper.cs
- UriExt.cs
- CollectionViewProxy.cs
- SQLSingle.cs
- LinkUtilities.cs
- PenThread.cs
- CodeCompileUnit.cs
- PageThemeParser.cs
- CalendarDataBindingHandler.cs
- Expressions.cs
- GatewayIPAddressInformationCollection.cs
- altserialization.cs
- SystemParameters.cs
- PageSetupDialog.cs
- Rfc2898DeriveBytes.cs
- TimerEventSubscription.cs
- UnsignedPublishLicense.cs
- ThreadAttributes.cs
- OneOfScalarConst.cs
- DataMemberListEditor.cs
- DeviceContext.cs
- FlowDocumentReader.cs
- DataGridViewColumnDesignTimeVisibleAttribute.cs
- CodeArrayIndexerExpression.cs
- ToolboxItem.cs
- versioninfo.cs
- KeyBinding.cs
- HtmlLabelAdapter.cs
- ConfigViewGenerator.cs
- ConfigXmlWhitespace.cs
- ActionMessageFilter.cs
- UIElement3D.cs
- ReferentialConstraint.cs
- NetCodeGroup.cs
- XmlWhitespace.cs
- StyleCollection.cs
- FontStretch.cs
- DictionaryTraceRecord.cs
- FixedHyperLink.cs
- CollectionView.cs
- FastEncoder.cs
- WebBrowserSiteBase.cs
- AspCompat.cs
- AccessDataSourceDesigner.cs
- XPathPatternBuilder.cs
- VirtualizingStackPanel.cs
- dataprotectionpermissionattribute.cs
- XmlLinkedNode.cs
- VirtualizingStackPanel.cs
- Rights.cs
- TraceEventCache.cs
- ImageBrush.cs
- MetricEntry.cs
- SyntaxCheck.cs
- SerializationInfoEnumerator.cs
- EventHandlersStore.cs
- LinearKeyFrames.cs
- XomlCompilerResults.cs
- FixedSOMLineRanges.cs
- MimeTypeMapper.cs
- StrongName.cs
- RenderContext.cs
- AssemblyAttributes.cs
- ToolConsole.cs
- FrameworkContentElement.cs
- AlphabeticalEnumConverter.cs
- NotEqual.cs
- CallTemplateAction.cs
- FieldTemplateFactory.cs
- CryptographicAttribute.cs