Thread overview | |||||
---|---|---|---|---|---|
|
March 05, 2006 help: sendmessage function | ||||
---|---|---|---|---|
| ||||
I'm trying to call the SendMessage function as defined in the windows api. Unfortunately every attempt to call it results in an error. Initially I tried calling the function directly assuming that it would have been imported into my applications namespace after: " import std.c.windows.windows; " this failed. So I tried: " extern (Windows) void SendMessage (HWND, uint, WPARAM, LPARAM); " this got the problem past the compiler, but generated an error during linkage. At this stage I'm open for alternatives. I'm trying to update a client window after my program processes WM_CHAR messages. I was trying to use the SendMessage function to trigger WM_PAINT events. Any help would be appreciated. thanks, lee |
March 05, 2006 Re: help: sendmessage function | ||||
---|---|---|---|---|
| ||||
Posted in reply to llee | llee wrote: > I'm trying to call the SendMessage function as defined in the windows api. Because there's no such function. It's SendMessageA (the SDK headers define SendMessage as a macro). > Unfortunately every attempt to call it results in an error. > Initially I tried calling the function directly assuming that it would have been > imported into my applications namespace after: " import std.c.windows.windows; " > this failed. So I tried: > " extern (Windows) void SendMessage (HWND, uint, WPARAM, LPARAM); " Try this extern(Windows) LRESULT SendMessageA(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam); or for the Unicode version use extern(Windows) LRESULT SendMessageW(HWND hWnd, UINT wMsg, WPARAM wParam, LPARAM lParam); > this got the problem past the compiler, but generated an error during linkage. > At this stage I'm open for alternatives. > I'm trying to update a client window after my program processes WM_CHAR > messages. I was trying to use the SendMessage function to trigger WM_PAINT > events. Any help would be appreciated. > thanks, lee > > > |
March 06, 2006 Re: help: sendmessage function | ||||
---|---|---|---|---|
| ||||
Posted in reply to John C | John C wrote: > llee wrote: > >> I'm trying to call the SendMessage function as defined in the windows api. > > > Because there's no such function. It's SendMessageA (the SDK headers define SendMessage as a macro). > >> Unfortunately every attempt to call it results in an error. >> Initially I tried calling the function directly assuming that it would have been >> imported into my applications namespace after: " import std.c.windows.windows; " >> this failed. So I tried: >> " extern (Windows) void SendMessage (HWND, uint, WPARAM, LPARAM); " > > > Try this > extern(Windows) LRESULT SendMessageA(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam); > or for the Unicode version use > extern(Windows) LRESULT SendMessageW(HWND hWnd, UINT wMsg, WPARAM wParam, LPARAM lParam); > > and/or version( unicode ) { alias SendMessageW SendMessage; } else { aliasm SendMessageA SendMessage; } >> this got the problem past the compiler, but generated an error during linkage. >> At this stage I'm open for alternatives. >> I'm trying to update a client window after my program processes WM_CHAR >> messages. I was trying to use the SendMessage function to trigger WM_PAINT >> events. Any help would be appreciated. >> thanks, lee >> >> >> |
Copyright © 1999-2021 by the D Language Foundation