Desktop Functions: Smart Device Functions:
|
Search Results for "WM" in [All]ole321: CoGetMalloc
static extern IMalloc CoGetMalloc(uint dwMemContext); 2: STGM
DIRECT_SWMR = 0x00400000,
DIRECT_SWMR = 4194304 gdi323: GradientFill
GRADIENT_FILL dwMode); // gradient fill mode
GRADIENT_FILL dwMode); // Use either GRADIENT_FILL.RECT_H or GRADIENT_FILL.RECT_V. Using the value GRADIENT_FILL.TRIANGLE is wrong in this overload!
GRADIENT_FILL dwMode); // Use only GRADIENT_FILL.TRIANGLE. Both values GRADIENT_FILL.RECT_H and GRADIENT_FILL.RECT_V are wrong in this overload!
private static extern int SendMessage(IntPtr hWnd, WindowsMessages wMsg, IntPtr wParam, IntPtr lParam);
long result = SendMessage(HWND_BROADCAST, WindowsMessages.WM_FONTCHANGE, IntPtr.Zero, IntPtr.Zero);
Console.WriteLine(String.Format("WM_FONTCHANGE broadcast returned {0}", result));
//Snipped for length - see the list of WM_ calls on this site. 5: SetROP2
static extern int SetROP2(IntPtr hdc, int fnDrawMode); crypt32
public static extern IntPtr CertCreateCTLContext(uint dwMsgAndCertEncodingType, IntPtr pbCtlEncoded, uint cbCtlEncoded); These constants are used for the dwMsgAndCertEncodingType.
uint dwMsgEncodingType,
uint dwMsgType,
static extern IntPtr CryptMsgOpenToEncode(int dwMsgEncodingType, uint dwFlags, int dwMsgType, IntPtr pvMsgEncodeInfo, IntPtr pszInnerContentObjID, IntPtr pStreamInfo); 10: CryptQueryObject
IntPtr pdwMsgAndCertEncodingType,
verifyParams.dwMsgAndCertEncodingType = CryptoConstants.X509_ASN_ENCODING | CryptoConstants.PKCS_7_ASN_ENCODING;
cpMessageParams.dwMsgEncodingType = X509_ASN_ENCODING | PKCS_7_ASN_ENCODING; 13: CTL_CONTEXT
public uint dwMsgAndCertEncodingType; shlwapi
DontShowMeThisDialogAgain imm3215: ImmConfigureIME
UInt32 dwMode, netapi32
string lpNewMachineName, lpNewMachineName - (in) Pointer to a constant string that specifies the new name of the computer. If specified, the local computer name is changed as well. If this parameter is NULL, the function assumes you have already called the SetComputerNameEx function.
string lpNewMachineName, 17: NetShareGetInfo There is a possible way via the WMI ManagementClass - see: 18: NetWkstaUserEnum WMI can do this sort of thing (the System.Management namespace in .Net 2.0) If you want to find the user logged in to the workstation, consider instead a WMI query ("select UserName from Win32_ComputerSystem"), which has certain advantages (runs faster, less ambigious results, doesn't require Interop if using .Net 2.0 System.Management namespace, etc.) ws2_3219: WSAPROTOCOL_INFO
public int dwMessageSize; winspool20: EnumJobs
Public wMonth As Short
Public wMinute As Short
Public wMilliseconds As Short
pinvokeResult = SendMessageTimeout(HWND_BROADCAST, WM_SETTINGCHANGE, IntPtr.Zero,
pinvokeResult = SendMessageTimeout(HWND_BROADCAST, WM_SETTINGCHANGE, IntPtr.Zero, Turns out that there are some clever and powerful tools in Visual Studio 2005 and 2008 for working with the Management Classes (although couldn’t find it in the “Standard Edition” installed on this machine, definitely exists in my laptop’s Visual Studio). You can use Server Explorer to navigate a treeview to your management class (in this example, the Printers node), right-click on it and select “Generate Managed Class”. This will automagically create a strongly-typed C#.Net class representing the object model of the WMI Printers Class, with all its properties and methods. user32An application sends the WM_MDIICONARRANGE message to the multiple-document interface (MDI) client window to prompt the client window to arrange its minimized MDI child windows. 23: CallNextHookEx
static extern IntPtr CallNextHookEx(IntPtr hhk, int nCode, WM wParam, [In]KBDLLHOOKSTRUCT lParam);
static extern IntPtr CallNextHookEx(IntPtr hhk, int nCode, WM wParam, [In]MSLLHOOKSTRUCT lParam);
static extern TODO ChangeWindowMessageFilter(USER32)(TODO);
Declare Function ChangeWindowMessageFilter(USER32) Lib "user32.dll" (TODO) As TODO
public static extern bool ChangeWindowMessageFilterEx(IntPtr hWnd, uint msg, ChangeWindowMessageFilterExAction action,ref CHANGEFILTERSTRUCT changeInfo);
Private Shared Function ChangeWindowMessageFilterEx(hWnd As IntPtr, msg As UInteger, action As ChangeWindowMessageFilterExAction, ByRef changeInfo As CHANGEFILTERSTRUCT) As <MarshalAs(UnmanagedType.Bool)> Boolean
public enum ChangeWindowMessageFilterExAction : uint
Private Enum ChangeWindowMessageFilterExAction As UInteger
Private Enum ChangeWindowMessageFilterFlags As UInteger ChangeWindowMessageFilterEx(Handle,_message,ChangeWindowMessageFilterExAction.Allow, IntPtr.Zero);
ChangeWindowMessageFilterEx(Handle,_message,ChangeWindowMessageFilterExAction.Allow, ref filterStatus); 27: CreateCaret Windows allows only one caret per message queue. To add a caret to a control, handle the WM_SETFOCUS message, or the GotFocus event, or override OnGotFocus if you're writing a custom control, and call CreateCaret from the message or event handler. You should also handle WM_KILLFOCUS, LostFocus or OnLostFocus and call DestroyCaret. You will also need to call ShowCaret to make the caret visible, and SetCaretPos to set its position. 28: CreatePopupMenu
public const uint WM_DRAWITEM = 0x002b;
public const uint WM_MEASUREITEM = 0x002c; 29: CreateWindowEx
/// <param name="hInstance">Handle to the instance of the module to be associated with the window.</param> <param name="lpParam">Pointer to a value to be passed to the window through the CREATESTRUCT structure (lpCreateParams member) pointed to by the lParam param of the WM_CREATE message. This message is sent to the created window by this function before it returns.
/// <item>if one of the controls in the dialog template is not registered, or its window window procedure fails WM_CREATE or WM_NCCREATE</item>
''' <param name="hInstance">Handle to the instance of the module to be associated with the window.</param> <param name="lpParam">Pointer to a value to be passed to the window through the CREATESTRUCT structure (lpCreateParams member) pointed to by the lParam param of the WM_CREATE message. This message is sent to the created window by this function before it returns.
''' <item>if one of the controls in the dialog template is not registered, or its window window procedure fails WM_CREATE or WM_NCCREATE</item> When you call this function, the WndProc function must respond to the WM_NCCREATE message by returning TRUE. If it does not, the creation process will fail. A null handle will be returned from CreateWindowEx and GetLastError will return 0. See MSDN on WM_NCCREATE (http://msdn.microsoft.com/en-us/library/ms632635.aspx) and also WM_CREATE (http://msdn.microsoft.com/en-us/library/ms632619.aspx). You can have your WndProc call DefWindowProc, which will take care of this issue.
switch ((WM)message)
case WM.PAINT:
case WM.DESTROY:
return Win32.DefWindowProc(hWnd, (WM)message, wParam, lParam);
///<Summary>Sends a WM_NCCALCSIZE message to the window, even if the window's size is not being changed. If this flag is not specified, WM_NCCALCSIZE is sent only when the window's size is being changed.</Summary>
///<Summary>Prevents the window from receiving the WM_WINDOWPOSCHANGING message.</Summary>
'''<Summary>Sends a WM_NCCALCSIZE message to the window, even if the window's size is not being changed. If this flag is not specified, WM_NCCALCSIZE is sent only when the window's size is being changed.</Summary>
'''<Summary>Prevents the window from receiving the WM_WINDOWPOSCHANGING message.</Summary> 31: DestroyWindow
/// <para>The DestroyWindow function destroys the specified window. The function sends WM_DESTROY and WM_NCDESTROY messages to the window to deactivate it and remove the keyboard focus from it. The function also destroys the window's menu, flushes the thread message queue, destroys timers, removes clipboard ownership, and breaks the clipboard viewer chain (if the window is at the top of the viewer chain).</para>
''' <para>The DestroyWindow function destroys the specified window. The function sends WM_DESTROY and WM_NCDESTROY messages to the window to deactivate it and remove the keyboard focus from it. The function also destroys the window's menu, flushes the thread message queue, destroys timers, removes clipboard ownership, and breaks the clipboard viewer chain (if the window is at the top of the viewer chain).</para> 32: DrawMenuBar
static extern bool DrawMenuBar(IntPtr hWnd);
static extern bool DrawMenuBar(IntPtr hWnd);
DrawMenuBar(frm.Handle);
private const UInt32 WM_CLOSE = 0x0010;
// Try closing application by sending WM_CLOSE to all child windows in all threads.
PostMessage(hWnd, WM_CLOSE, IntPtr.Zero, IntPtr.Zero);
Private Const WM_CLOSE As UInt32 = &H10
' Try closing application by sending WM_CLOSE to all child windows in all threads.
PostMessage(hWnd, WM_CLOSE, IntPtr.Zero, IntPtr.Zero) 34: GetMenuItemCount
static extern bool DrawMenuBar(IntPtr hWnd);
DrawMenuBar(frm.Handle); 35: GetMenuItemID
Sendmessage(hwndMain, WM_COMMAND, intMID, 0) 'Click the MenuItem! 36: GetRawInputData
if (m.Msg == (int)WindowMessages.RawInput) // WindowMessages.RawInput = 0x00FF (WM_INPUT) 37: GetSubMenu
Sendmessage(hwndMain, WM_COMMAND, intMID, 0) 'Click the MenuItem! 38: GetSystemMenu
static extern bool DrawMenuBar(IntPtr hWnd);
DrawMenuBar(frm.Handle);
static extern bool DrawMenuBar(IntPtr hWnd);
DrawMenuBar(handle);
static extern uint GetWindowModuleFileName(IntPtr hwnd,
Private Shared Function GetWindowModuleFileName(hwnd As IntPtr, _ GetWindowModuleFileName(hwnd, fileName, 2000);
const UInt32 SW_SHOWMINIMIZED = 2;
const UInt32 SW_SHOWMAXIMIZED = 3;
const UInt32 SW_SHOWMINNOACTIVE = 7; 41: GetWindowTex
/// WM_GETTEXTLENGTH message to be sent to the specified window or control.<br />Under certain conditions, the
/// <br />To obtain the exact length of the text, use the WM_GETTEXT, LB_GETTEXT, or CB_GETLBTEXT messages, or the 42: MessageBox
<MarshalAs(UnmanagedType.U4)> ByVal dwMilliseconds as Int32, _
Byval prmdwMiliseconds as Long _ dwMilliseconds Messagebox wont time out if dwMilliseconds is 0
uint dwMilliseconds, uint dwWakeMask, uint dwFlags);
ByVal dwMilliseconds As Integer, _
int dwMilliseconds,
uint dwMilliseconds, uint dwWakeMask, uint dwFlags);
ByVal dwMilliseconds As Integer, _ 45: PeekMessage
static extern bool PeekMessage(out NativeMessage lpMsg, HandleRef hWnd, uint wMsgFilterMin,
uint wMsgFilterMax, uint wRemoveMsg); Based off of Tom Miller's blog. Modified to comply with VS.Net 2005 static code analysis (i.e. proper MarshalAs attributes) and eliminate the refrence to WindowMessage. 46: PostQuitMessage MSDN recommends using PostQuitMessage over PostMessage when you want to send WM_QUIT http://msdn.microsoft.com/en-us/library/ms632641%28v=vs.85%29.aspx
private const int WM_POWERBROADCAST = 0x0218;
if (msg == WM_POWERBROADCAST && wParam.ToInt32() == PBT_POWERSETTINGCHANGE)
/// The <see cref="RegisterWindowMessage" /> function is typically used to register messages for communicating between
/// <see cref="RegisterWindowMessage" /> when more than one application must process the same message.For sending
/// private messages within a window class, an application can use any integer in the range WM_USER through 0x7FFF.
/// static extern uint RegisterWindowMessage(string lpString);
/// queryCancelAutoPlay = RegisterWindowMessage("QueryCancelAutoPlay");
static extern uint RegisterWindowMessage(string lpString);
Private Shared Function RegisterWindowMessage( _
class method RegisterWindowMessage(lpString: String): UInt32; external;
Declare Function RegisterWindowMessage Lib "user32.dll" (ByVal lpString As String) As Integer
DllImport("user32.dll", EntryPoint = "RegisterWindowMessageW", SetLastError = true)]
private static extern int RegisterWindowMessage(string lpString); Declare Function RegisterWindowMessage Lib "user32.dll" Alias "RegisterWindowMessageW" (ByVal lpString As long) As Integer
lngWindowMsg = RegisterWindowMessage(StrPtr(strMessageToRegister)) If you use RegisterWindowMessage("QueryCancelAutoPlay") it will NOT work, put the "QueryCancelAutoPlay" in a variable or constant and use that one.
MessageID = RegisterWindowMessage("QueryCancelAutoPlay")
lMsg = Win32.RegisterWindowMessage("WM_HTML_GETOBJECT");
static extern uint RegisterWindowMessage(string lpString);
queryCancelAutoPlay = RegisterWindowMessage("QueryCancelAutoPlay"); 49: ReleaseCapture
Public Const WM_NCLBUTTONDOWN As Integer = &HA1
SendMessage(Handle, WM_NCLBUTTONDOWN, HT_CAPTION, 0)
private const int WM_SYSCOMMAND = 0x112;
SendMessage(ctrl.Handle, WM_SYSCOMMAND, MOUSE_MOVE, ref nul); 50: RemoveMenu
static extern bool DrawMenuBar(IntPtr hWnd);
DrawMenuBar(frm.Handle); 51: SB_GETTEXT
UInt32 wMsg,
UInt32 wMsg,
UInt32 wMsg,
private const uint WM_USER = 0x0400;
private const uint SB_SETPARTS = WM_USER + 4;
private const uint SB_GETPARTS = WM_USER + 6;
private const uint SB_GETTEXTLENGTH = WM_USER + 12;
private const uint SB_GETTEXT = WM_USER + 13; 52: ScrollWindowEx
/// If SW_INVALIDATE, don't send WM_ERASEBACKGROUND. 53: SendInput
[testing.windows]::SetForegroundWindow( @( Get-Process notepad |? { $_.id -in @( get-wmiobject win32_process -filter "name='notepad.exe'" |% { if ( $_.getowner().user -eq $env:username ) { $_.processid } } ) } )[0].MainWindowHandle) 54: SendMessage
/* Version specifically setup for use with WM_GETTEXT message */
int Msg, // Use WM_GETTEXT
/* Version for a message which returns an int, such as WM_GETTEXTLENGTH. */
lMsg = Win32.RegisterWindowMessage("WM_HTML_GETOBJECT"); C# WM_GETTEXTLENGTH example
const uint WM_GETTEXTLENGTH = 0x000E;
int result = SendMessageTimeout(hwnd, WM_GETTEXTLENGTH, 0, 0, 0X2C, 5, out length); //0X2C = SMTO_ABORTIFHUNG | SMTO_BLOCK | SMTO_NOTIMEOUTIFNOTHUNG | SMTO_ERRORONEXIT
/* Version specifically setup for use with WM_GETTEXT message */
int Msg, // Use WM_GETTEXT
lMsg = Win32.RegisterWindowMessage("WM_HTML_GETOBJECT");
case (0x0001): // WM_CREATE
case (0x0002): // WM_DESTROY
case (0x030D): // WM_CHANGECBCHAIN
case (0x0308): // WM_DRAWCLIPBOARD 57: SetKeyboardState
Dim dwMajorVersion As Integer
Dim dwMinorVersion As Integer 58: SetParent
const int WM_SYSCOMMAND = 274;
SendMessage(proc.MainWindowHandle, WM_SYSCOMMAND, SC_MAXIMIZE, 0); 59: SetProp
/// <para>Before a window is destroyed (that is, before it returns from processing the WM_NCDESTROY message), an application must remove all entries it has added to the property list. The application must use the RemoveProp function to remove the entries.</para> 60: SetTimer Use the version that takes an IntPtr as last parameter and pass it IntPtr.Zero if you are going to handle the WM_TIMER message in your own override of WndProc. Use the version that takes a delegate as last parameter if you don't explicitly handle the WM_TIMER message or if you don't override WndProc. In that case DefWndProc will invoke your callback when the time-out value elapses. Cut off search results after 60. Please refine your search. |