Code:
/ 4.0 / 4.0 / untmp / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Touch.cs
- OdbcConnectionPoolProviderInfo.cs
- MarshalByRefObject.cs
- WebPartUtil.cs
- XmlSchemaCompilationSettings.cs
- RelationshipFixer.cs
- MediaTimeline.cs
- TextBoxView.cs
- invalidudtexception.cs
- DictionaryKeyPropertyAttribute.cs
- XmlWrappingWriter.cs
- CellTreeNodeVisitors.cs
- DispatcherExceptionEventArgs.cs
- localization.cs
- RowBinding.cs
- CodeTypeParameterCollection.cs
- SafeRegistryHandle.cs
- ProcessProtocolHandler.cs
- NamedPipeHostedTransportConfiguration.cs
- BooleanAnimationBase.cs
- SchemaImporterExtensionElement.cs
- RoleManagerEventArgs.cs
- ISCIIEncoding.cs
- GridViewColumnCollectionChangedEventArgs.cs
- DesignerDataStoredProcedure.cs
- BitmapEffectrendercontext.cs
- SendActivityDesignerTheme.cs
- _AutoWebProxyScriptHelper.cs
- MDIClient.cs
- DataList.cs
- ActivityMarkupSerializationProvider.cs
- StreamAsIStream.cs
- DrawingAttributes.cs
- documentation.cs
- TextContainer.cs
- KeyInterop.cs
- ColorKeyFrameCollection.cs
- CultureTable.cs
- BooleanConverter.cs
- UnsafeNativeMethodsPenimc.cs
- TableProvider.cs
- ZipIOZip64EndOfCentralDirectoryBlock.cs
- MemberInfoSerializationHolder.cs
- HttpAsyncResult.cs
- RtType.cs
- TemplateField.cs
- HotCommands.cs
- DataGridViewRowHeightInfoPushedEventArgs.cs
- HostedHttpRequestAsyncResult.cs
- Parser.cs
- SiteOfOriginContainer.cs
- TextModifier.cs
- StyleModeStack.cs
- SystemDropShadowChrome.cs
- ComplexBindingPropertiesAttribute.cs
- FeatureSupport.cs
- SqlDeflator.cs
- StylusPointPropertyUnit.cs
- MsmqProcessProtocolHandler.cs
- ManagementQuery.cs
- DataGridViewAccessibleObject.cs
- SequentialUshortCollection.cs
- MarginsConverter.cs
- OleDbDataAdapter.cs
- Label.cs
- KeyInfo.cs
- TextBox.cs
- Region.cs
- PtsPage.cs
- Timer.cs
- ToolTipAutomationPeer.cs
- UnauthorizedWebPart.cs
- fixedPageContentExtractor.cs
- MailMessage.cs
- Roles.cs
- AssertValidation.cs
- HandlerBase.cs
- DataGridViewCellParsingEventArgs.cs
- QilScopedVisitor.cs
- XmlDownloadManager.cs
- ExpressionBindings.cs
- ArgumentException.cs
- ServerValidateEventArgs.cs
- WSTrustFeb2005.cs
- ProfessionalColorTable.cs
- ScriptingWebServicesSectionGroup.cs
- MediaTimeline.cs
- ContextMenuAutomationPeer.cs
- MessageDroppedTraceRecord.cs
- IProvider.cs
- CodeCompiler.cs
- AnnotationStore.cs
- SqlMethodAttribute.cs
- SecurityDocument.cs
- ComboBoxRenderer.cs
- DataServiceException.cs
- NullableConverter.cs
- VariableQuery.cs
- BinaryFormatterWriter.cs
- ParameterCollection.cs