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
- ApplicationCommands.cs
- Shape.cs
- IProvider.cs
- VerticalAlignConverter.cs
- SynchronizedInputProviderWrapper.cs
- FixedPosition.cs
- DataGridViewHeaderCell.cs
- UIElement.cs
- StaticResourceExtension.cs
- Enumerable.cs
- CodeSubDirectoriesCollection.cs
- Baml2006SchemaContext.cs
- LockRecursionException.cs
- NameValueSectionHandler.cs
- AudioDeviceOut.cs
- QueryExpression.cs
- DefaultMemberAttribute.cs
- InputScopeAttribute.cs
- StatusBarItem.cs
- SystemColors.cs
- SignatureHelper.cs
- TextEmbeddedObject.cs
- StringConverter.cs
- MemoryPressure.cs
- CellTreeNode.cs
- MulticastDelegate.cs
- SaveFileDialog.cs
- SrgsText.cs
- XmlWrappingWriter.cs
- StorageAssociationTypeMapping.cs
- MarshalDirectiveException.cs
- ImagingCache.cs
- SectionVisual.cs
- DbProviderServices.cs
- DataDocumentXPathNavigator.cs
- Point3DCollection.cs
- StreamWithDictionary.cs
- XmlLoader.cs
- WsdlInspector.cs
- IntSecurity.cs
- RegistrationServices.cs
- ControlAdapter.cs
- SqlClientPermission.cs
- RelatedImageListAttribute.cs
- Translator.cs
- StringBuilder.cs
- ZipIOCentralDirectoryFileHeader.cs
- KeyGestureValueSerializer.cs
- TraceRecord.cs
- RepeaterCommandEventArgs.cs
- SvcMapFile.cs
- SeekStoryboard.cs
- MeasureData.cs
- ManagementEventWatcher.cs
- ExtensionQuery.cs
- LingerOption.cs
- SiteMapNode.cs
- SiteMap.cs
- TdsRecordBufferSetter.cs
- BitmapSourceSafeMILHandle.cs
- SEHException.cs
- GestureRecognitionResult.cs
- DayRenderEvent.cs
- XmlDataProvider.cs
- XPathMessageFilterElementCollection.cs
- RadioButtonList.cs
- DeobfuscatingStream.cs
- BaseParser.cs
- DBParameter.cs
- HelloMessageCD1.cs
- BitStream.cs
- ImageMap.cs
- SqlWorkflowPersistenceService.cs
- TextParagraphCache.cs
- ProtocolsConfigurationEntry.cs
- SymmetricKeyWrap.cs
- EntityConnection.cs
- DataGridViewCheckBoxCell.cs
- NoneExcludedImageIndexConverter.cs
- Overlapped.cs
- WsatServiceCertificate.cs
- CryptoApi.cs
- Registry.cs
- Function.cs
- DesignTimeTemplateParser.cs
- CreateUserWizard.cs
- EventMappingSettings.cs
- DataBindingCollectionEditor.cs
- ComponentDispatcher.cs
- ContainerSelectorGlyph.cs
- JapaneseLunisolarCalendar.cs
- FileSystemEventArgs.cs
- WebPartDescriptionCollection.cs
- Point3DCollection.cs
- HttpConfigurationContext.cs
- ProvidePropertyAttribute.cs
- Rotation3D.cs
- ISFTagAndGuidCache.cs
- ColorBuilder.cs
- ConnectivityStatus.cs