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
- SqlMetaData.cs
- MethodBuilderInstantiation.cs
- DataRowCollection.cs
- ObjectDataSourceStatusEventArgs.cs
- GenericsInstances.cs
- WhereQueryOperator.cs
- Merger.cs
- Registry.cs
- InvalidEnumArgumentException.cs
- CompiledQueryCacheEntry.cs
- BuildProviderAppliesToAttribute.cs
- EventMemberCodeDomSerializer.cs
- Margins.cs
- MetaModel.cs
- MessageSmuggler.cs
- PathSegmentCollection.cs
- HeaderedItemsControl.cs
- HebrewCalendar.cs
- ByteStack.cs
- SqlTriggerContext.cs
- HwndSourceKeyboardInputSite.cs
- BookmarkInfo.cs
- AtlasWeb.Designer.cs
- PolyLineSegmentFigureLogic.cs
- AppDomainAttributes.cs
- ToolstripProfessionalRenderer.cs
- HMACSHA512.cs
- NamespaceCollection.cs
- CodeComment.cs
- SkipQueryOptionExpression.cs
- AggregateException.cs
- Soap.cs
- TextEffectResolver.cs
- AudioFormatConverter.cs
- FocusWithinProperty.cs
- DefaultProfileManager.cs
- FlowDocumentPageViewerAutomationPeer.cs
- MatrixAnimationUsingKeyFrames.cs
- ToolStripItemEventArgs.cs
- CategoriesDocumentFormatter.cs
- NativeActivityFaultContext.cs
- TraceFilter.cs
- DataGridViewRowPostPaintEventArgs.cs
- ComponentRenameEvent.cs
- SQLBytesStorage.cs
- WebPartCatalogAddVerb.cs
- StylusShape.cs
- SystemWebExtensionsSectionGroup.cs
- TransactionChannelFactory.cs
- XmlSchemaAppInfo.cs
- DataSourceCache.cs
- DispatcherTimer.cs
- HtmlElementCollection.cs
- PrimarySelectionGlyph.cs
- Activator.cs
- WindowsSpinner.cs
- WebPartDeleteVerb.cs
- BitmapEffectInput.cs
- DecoratedNameAttribute.cs
- HostedTransportConfigurationManager.cs
- EventManager.cs
- GenerateTemporaryTargetAssembly.cs
- CustomErrorCollection.cs
- SystemUdpStatistics.cs
- DesignerVerbCollection.cs
- DecimalStorage.cs
- XhtmlBasicLinkAdapter.cs
- WebPartTransformerCollection.cs
- ISO2022Encoding.cs
- NestPullup.cs
- ScaleTransform3D.cs
- XmlSerializerNamespaces.cs
- XmlFormatExtensionPrefixAttribute.cs
- ToolStripItemRenderEventArgs.cs
- StyleHelper.cs
- PatternMatcher.cs
- OdbcParameterCollection.cs
- ProcessModelSection.cs
- ErrorInfoXmlDocument.cs
- DbProviderFactories.cs
- LicenseException.cs
- MatrixAnimationUsingKeyFrames.cs
- ButtonStandardAdapter.cs
- DataFormats.cs
- Matrix3DValueSerializer.cs
- StylusEventArgs.cs
- CompositeControl.cs
- XPathScanner.cs
- NativeObjectSecurity.cs
- AggregateNode.cs
- BehaviorEditorPart.cs
- TextEditorContextMenu.cs
- DataListComponentEditor.cs
- BulletChrome.cs
- FileDialog.cs
- ManagementPath.cs
- RowToParametersTransformer.cs
- AssociationTypeEmitter.cs
- XpsInterleavingPolicy.cs
- XmlSiteMapProvider.cs