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
- SchemaEntity.cs
- OutputCacheSettingsSection.cs
- WebPartDescription.cs
- XmlExceptionHelper.cs
- DbReferenceCollection.cs
- EventDrivenDesigner.cs
- ListParaClient.cs
- TraceContextRecord.cs
- LookupBindingPropertiesAttribute.cs
- IdentityNotMappedException.cs
- AuthenticationConfig.cs
- DependencyProperty.cs
- LinqDataSourceUpdateEventArgs.cs
- RegexWriter.cs
- OptimalBreakSession.cs
- Camera.cs
- SafeFileMappingHandle.cs
- WebPart.cs
- TypeSystem.cs
- SystemIPGlobalStatistics.cs
- HostAdapter.cs
- Model3DGroup.cs
- OleDbErrorCollection.cs
- PolygonHotSpot.cs
- JulianCalendar.cs
- DispatcherOperation.cs
- RuleSetCollection.cs
- SeverityFilter.cs
- ComponentGuaranteesAttribute.cs
- DisplayNameAttribute.cs
- PageContent.cs
- BCLDebug.cs
- ResetableIterator.cs
- StyleReferenceConverter.cs
- DataGridViewElement.cs
- HtmlInputReset.cs
- QilXmlWriter.cs
- WebExceptionStatus.cs
- UnsafeNativeMethods.cs
- FastPropertyAccessor.cs
- RuleSettings.cs
- WpfXamlMember.cs
- UniqueConstraint.cs
- Stylus.cs
- HScrollProperties.cs
- DependencyObject.cs
- ProgressBarHighlightConverter.cs
- XmlValidatingReader.cs
- XslVisitor.cs
- StreamAsIStream.cs
- BaseHashHelper.cs
- FlowSwitchDesigner.xaml.cs
- Underline.cs
- ReferenceAssemblyAttribute.cs
- TreeViewHitTestInfo.cs
- GenericTextProperties.cs
- WorkflowServiceOperationListItem.cs
- NativeMethods.cs
- FreezableCollection.cs
- XmlWellformedWriter.cs
- DataBinding.cs
- LoadedEvent.cs
- FileSystemEventArgs.cs
- JsonMessageEncoderFactory.cs
- TrackingMemoryStream.cs
- WindowsStatusBar.cs
- dtdvalidator.cs
- ObjectParameterCollection.cs
- StorageBasedPackageProperties.cs
- FrameworkReadOnlyPropertyMetadata.cs
- DataProtection.cs
- TimeoutValidationAttribute.cs
- FileLogRecordStream.cs
- WindowsRebar.cs
- SchemaImporterExtensionElementCollection.cs
- PersonalizationDictionary.cs
- OutArgumentConverter.cs
- MissingMemberException.cs
- XmlDataSource.cs
- LiteralTextContainerControlBuilder.cs
- SingleTagSectionHandler.cs
- BridgeDataReader.cs
- BindingContext.cs
- DataSourceSelectArguments.cs
- MethodRental.cs
- PropertyKey.cs
- EditingMode.cs
- MultiBinding.cs
- ButtonPopupAdapter.cs
- SQLDateTime.cs
- ToolboxItemSnapLineBehavior.cs
- XmlElementAttributes.cs
- SystemKeyConverter.cs
- TemplateControlCodeDomTreeGenerator.cs
- LogWriteRestartAreaAsyncResult.cs
- IndentTextWriter.cs
- XmlImplementation.cs
- SqlUtil.cs
- WinEventWrap.cs
- TableCell.cs