Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / Tools / System.Activities.Presentation / System / Activities / Presentation / View / Win32Interop.cs / 1484997 / Win32Interop.cs
//---------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //--------------------------------------------------------------- namespace System.Activities.Presentation.View { using System; using System.Runtime.InteropServices; using System.Diagnostics.CodeAnalysis; static class Win32Interop { public const int WM_SETICON = 0x80; public const int WM_NCHITTEST = 0x84; public const int WM_SYSCOMMAND = 0x0112; public const int GWL_STYLE = -16; public const int WS_MAXIMIZEBOX = 0x00010000; public const int WS_MINIMIZEBOX = 0x00020000; public const int GWL_EXSTYLE = -20; public const int WS_EX_DLGMODALFRAME = 0x00000001; public const int WS_EX_CONTEXTHELP = 0x00000400; public const int SC_CONTEXTHELP = 0xf180; public const int ICON_SMALL = 0; public const int ICON_BIG = 1; [DllImport("User32", EntryPoint = "ScreenToClient", SetLastError = true, ExactSpelling = true, CharSet = CharSet.Auto)] public static extern int ScreenToClient(IntPtr hWnd, [In, Out] POINT pt); [StructLayout(LayoutKind.Sequential)] public sealed class POINT { public int x; public int y; public POINT() { this.x = 0; this.y = 0; } public POINT(int x, int y) { this.x = x; this.y = y; } } // This static method is required because legacy OSes do not support // SetWindowLongPtr internal static IntPtr SetWindowLongPtr(HandleRef hWnd, int nIndex, IntPtr dwNewLong) { if (IntPtr.Size == 8) return SetWindowLongPtr64(hWnd, nIndex, dwNewLong); else return new IntPtr(SetWindowLong32(hWnd, nIndex, dwNewLong.ToInt32())); } // This static method is required because Win32 does not support // GetWindowLongPtr directly public static IntPtr GetWindowLongPtr(IntPtr hWnd, int nIndex) { if (IntPtr.Size == 8) return GetWindowLongPtr64(hWnd, nIndex); else return GetWindowLongPtr32(hWnd, nIndex); } [DllImport("user32.dll", EntryPoint = "SetWindowLong")] private static extern int SetWindowLong32(HandleRef hWnd, int nIndex, int dwNewLong); [DllImport("user32.dll", EntryPoint = "SetWindowLongPtr")] private static extern IntPtr SetWindowLongPtr64(HandleRef hWnd, int nIndex, IntPtr dwNewLong); [SuppressMessage("Microsoft.Portability", "CA1901:PInvokeDeclarationsShouldBePortable", MessageId = "return", Justification = "Calling code is expected to handle the different size of IntPtr")] [DllImport("user32.dll", EntryPoint = "GetWindowLong")] private static extern IntPtr GetWindowLongPtr32(IntPtr hWnd, int nIndex); [DllImport("user32.dll", EntryPoint = "GetWindowLongPtr")] private static extern IntPtr GetWindowLongPtr64(IntPtr hWnd, int nIndex); [DllImport("user32.dll")] public static extern IntPtr SendMessage(IntPtr hWnd, int Msg, IntPtr wParam, IntPtr lParam); [DllImport("user32.dll", CharSet = CharSet.Auto, ExactSpelling = true)] public static extern IntPtr GetActiveWindow(); [System.Runtime.InteropServices.DllImport("gdi32.dll")] public static extern bool DeleteObject(IntPtr hObject); } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //--------------------------------------------------------------- namespace System.Activities.Presentation.View { using System; using System.Runtime.InteropServices; using System.Diagnostics.CodeAnalysis; static class Win32Interop { public const int WM_SETICON = 0x80; public const int WM_NCHITTEST = 0x84; public const int WM_SYSCOMMAND = 0x0112; public const int GWL_STYLE = -16; public const int WS_MAXIMIZEBOX = 0x00010000; public const int WS_MINIMIZEBOX = 0x00020000; public const int GWL_EXSTYLE = -20; public const int WS_EX_DLGMODALFRAME = 0x00000001; public const int WS_EX_CONTEXTHELP = 0x00000400; public const int SC_CONTEXTHELP = 0xf180; public const int ICON_SMALL = 0; public const int ICON_BIG = 1; [DllImport("User32", EntryPoint = "ScreenToClient", SetLastError = true, ExactSpelling = true, CharSet = CharSet.Auto)] public static extern int ScreenToClient(IntPtr hWnd, [In, Out] POINT pt); [StructLayout(LayoutKind.Sequential)] public sealed class POINT { public int x; public int y; public POINT() { this.x = 0; this.y = 0; } public POINT(int x, int y) { this.x = x; this.y = y; } } // This static method is required because legacy OSes do not support // SetWindowLongPtr internal static IntPtr SetWindowLongPtr(HandleRef hWnd, int nIndex, IntPtr dwNewLong) { if (IntPtr.Size == 8) return SetWindowLongPtr64(hWnd, nIndex, dwNewLong); else return new IntPtr(SetWindowLong32(hWnd, nIndex, dwNewLong.ToInt32())); } // This static method is required because Win32 does not support // GetWindowLongPtr directly public static IntPtr GetWindowLongPtr(IntPtr hWnd, int nIndex) { if (IntPtr.Size == 8) return GetWindowLongPtr64(hWnd, nIndex); else return GetWindowLongPtr32(hWnd, nIndex); } [DllImport("user32.dll", EntryPoint = "SetWindowLong")] private static extern int SetWindowLong32(HandleRef hWnd, int nIndex, int dwNewLong); [DllImport("user32.dll", EntryPoint = "SetWindowLongPtr")] private static extern IntPtr SetWindowLongPtr64(HandleRef hWnd, int nIndex, IntPtr dwNewLong); [SuppressMessage("Microsoft.Portability", "CA1901:PInvokeDeclarationsShouldBePortable", MessageId = "return", Justification = "Calling code is expected to handle the different size of IntPtr")] [DllImport("user32.dll", EntryPoint = "GetWindowLong")] private static extern IntPtr GetWindowLongPtr32(IntPtr hWnd, int nIndex); [DllImport("user32.dll", EntryPoint = "GetWindowLongPtr")] private static extern IntPtr GetWindowLongPtr64(IntPtr hWnd, int nIndex); [DllImport("user32.dll")] public static extern IntPtr SendMessage(IntPtr hWnd, int Msg, IntPtr wParam, IntPtr lParam); [DllImport("user32.dll", CharSet = CharSet.Auto, ExactSpelling = true)] public static extern IntPtr GetActiveWindow(); [System.Runtime.InteropServices.DllImport("gdi32.dll")] public static extern bool DeleteObject(IntPtr hObject); } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- CustomErrorsSectionWrapper.cs
- BevelBitmapEffect.cs
- ByteStreamBufferedMessageData.cs
- SingleQueryOperator.cs
- Encoder.cs
- ComboBoxRenderer.cs
- FolderBrowserDialog.cs
- AsyncCodeActivityContext.cs
- ChildTable.cs
- ActivityExecutionContext.cs
- OracleParameterCollection.cs
- PeerNearMe.cs
- TextChangedEventArgs.cs
- QuaternionValueSerializer.cs
- XmlSchema.cs
- DelegatingHeader.cs
- COM2DataTypeToManagedDataTypeConverter.cs
- EntityDataSourceContextCreatingEventArgs.cs
- XmlRootAttribute.cs
- DynamicExpression.cs
- GuidTagList.cs
- ClientScriptManager.cs
- CompoundFileDeflateTransform.cs
- DataGridViewCellCollection.cs
- CodeActivityMetadata.cs
- XmlUtilWriter.cs
- StringReader.cs
- VectorKeyFrameCollection.cs
- TextComposition.cs
- AuthenticationService.cs
- Control.cs
- DataGridViewRowCollection.cs
- TypedTableHandler.cs
- ObjectViewQueryResultData.cs
- Triplet.cs
- MouseActionConverter.cs
- BitmapEffectOutputConnector.cs
- DesignerVerbToolStripMenuItem.cs
- MultiDataTrigger.cs
- DesignerMetadata.cs
- BrowserCapabilitiesFactoryBase.cs
- XmlCharType.cs
- MarginsConverter.cs
- PolyQuadraticBezierSegmentFigureLogic.cs
- StorageEntitySetMapping.cs
- TagMapInfo.cs
- SqlBuffer.cs
- ReadOnlyDataSourceView.cs
- XPathSingletonIterator.cs
- Camera.cs
- MSAAWinEventWrap.cs
- Geometry3D.cs
- autovalidator.cs
- ScriptResourceInfo.cs
- ExtentKey.cs
- UnionCqlBlock.cs
- StartUpEventArgs.cs
- SafeNativeMethods.cs
- EntitySqlQueryCacheKey.cs
- ConfigXmlWhitespace.cs
- SystemNetworkInterface.cs
- ConfigurationValidatorBase.cs
- XPathCompileException.cs
- XmlSchemaCompilationSettings.cs
- CompileLiteralTextParser.cs
- DisplayMemberTemplateSelector.cs
- BaseHashHelper.cs
- SystemFonts.cs
- SignatureTargetIdManager.cs
- ExtendedPropertyDescriptor.cs
- BamlLocalizableResource.cs
- DoubleConverter.cs
- LightweightCodeGenerator.cs
- TypedReference.cs
- ActivationArguments.cs
- BezierSegment.cs
- XmlReaderDelegator.cs
- StopStoryboard.cs
- GridViewColumn.cs
- MarshalDirectiveException.cs
- ConfigXmlWhitespace.cs
- GenerateHelper.cs
- RunClient.cs
- validationstate.cs
- HasRunnableWorkflowEvent.cs
- NativeObjectSecurity.cs
- AdRotator.cs
- JsonDeserializer.cs
- PartitionerStatic.cs
- BitmapSource.cs
- WebPartDeleteVerb.cs
- URLAttribute.cs
- RunClient.cs
- ObjectDataSourceDesigner.cs
- ObservableCollection.cs
- SerializerProvider.cs
- FileVersion.cs
- _NTAuthentication.cs
- FileDialogCustomPlacesCollection.cs
- SqlAggregateChecker.cs