[return: MarshalAs(UnmanagedType.Bool)]
[DllImport("user32.dll", SetLastError = true)]
static extern bool PostMessage(HandleRef hWnd, uint Msg, IntPtr wParam,
IntPtr lParam);
<DllImport("user32.dll", SetLastError:=True, CharSet:=CharSet.Auto)> _
Private Shared Function PostMessage( _
ByVal hWnd As IntPtr, _
ByVal Msg As UInteger, _
ByVal wParam As IntPtr, _
ByVal lParam As IntPtr) As Boolean
End Function
None.
MSDN says: If the function fails, the return value is zero. To get extended error information, call GetLastError.
Please add some!
A wrapper for PostMessage looking for errors:
void PostMessageSafe( HandleRef hWnd, uint msg, IntPtr wParam, IntPtr lParam )
{
bool returnValue = PostMessage( hWnd, msg, wParam, lParam );
if( !returnValue )
{
// An error occured
throw new Win32Exception( Marshal.GetLastWin32Error() );
}
}
Do you know one? Please contribute it!