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
- MenuItem.cs
- SamlAudienceRestrictionCondition.cs
- OutArgument.cs
- ServiceDocumentFormatter.cs
- DemultiplexingDispatchMessageFormatter.cs
- XsdValidatingReader.cs
- FamilyTypeface.cs
- HwndMouseInputProvider.cs
- UIHelper.cs
- ModulesEntry.cs
- CodeSnippetStatement.cs
- LocationUpdates.cs
- ObjectAssociationEndMapping.cs
- DesignerCommandAdapter.cs
- RuleSettingsCollection.cs
- OptimizerPatterns.cs
- CodeExporter.cs
- EventLogPermissionEntryCollection.cs
- RtfToXamlLexer.cs
- RtfControlWordInfo.cs
- DataGridAddNewRow.cs
- BinaryUtilClasses.cs
- SchemaImporter.cs
- C14NUtil.cs
- counter.cs
- Double.cs
- HuffCodec.cs
- WebServiceErrorEvent.cs
- PhoneCallDesigner.cs
- CompositeFontParser.cs
- Converter.cs
- AutomationProperties.cs
- ParameterCollection.cs
- HwndSubclass.cs
- EventSource.cs
- RecognizedWordUnit.cs
- FullTrustAssembliesSection.cs
- SqlUtil.cs
- InputChannelAcceptor.cs
- Command.cs
- NamespaceDisplayAutomationPeer.cs
- ObjectNavigationPropertyMapping.cs
- ReadOnlyDictionary.cs
- Vector.cs
- AnimationClock.cs
- SimpleHandlerFactory.cs
- GradientStopCollection.cs
- UnsafeNativeMethods.cs
- EnumerableValidator.cs
- XmlProcessingInstruction.cs
- XPathDocumentBuilder.cs
- Panel.cs
- MessageBox.cs
- GridViewItemAutomationPeer.cs
- PathGradientBrush.cs
- DataServiceQueryException.cs
- CultureSpecificCharacterBufferRange.cs
- ScriptingSectionGroup.cs
- StatusBarDrawItemEvent.cs
- PageSettings.cs
- UriTemplateDispatchFormatter.cs
- DateTimeParse.cs
- HostProtectionException.cs
- HtmlInputReset.cs
- SqlRetyper.cs
- RuleSetDialog.cs
- WaitForChangedResult.cs
- OdbcInfoMessageEvent.cs
- WebPartCloseVerb.cs
- WorkflowRuntimeSection.cs
- streamingZipPartStream.cs
- ResourcePermissionBase.cs
- DesignTimeDataBinding.cs
- OleDbConnectionPoolGroupProviderInfo.cs
- EntityDataSourceMemberPath.cs
- TdsRecordBufferSetter.cs
- ApplicationContext.cs
- ImageAttributes.cs
- Dispatcher.cs
- RelatedEnd.cs
- ZipIOLocalFileHeader.cs
- ServerIdentity.cs
- ResXResourceWriter.cs
- KeyProperty.cs
- SqlInfoMessageEvent.cs
- EntityClassGenerator.cs
- PowerStatus.cs
- StrokeNodeData.cs
- ResourceReferenceExpressionConverter.cs
- Single.cs
- ComponentEvent.cs
- DisplayToken.cs
- ClientScriptManagerWrapper.cs
- EncryptedKey.cs
- SingleAnimationBase.cs
- DependencyPropertyValueSerializer.cs
- CngAlgorithm.cs
- SingleAnimationBase.cs
- VirtualDirectoryMapping.cs
- DataGridViewCellStateChangedEventArgs.cs