问题:ShellExecute(NULL, "open", "mailto:who@mail.neu.edu.cn?subject=Hello&Body=This is/n a test", NULL, NULL ,SW_SHOWNORMAL); 换行符不起作用.
结论:URL编码客户端浏览器向服务器发送数据采用编码的形式进行。该编码就是CRL编码.把换行符改成%0a.
you shouldn't be using that number for messages in MFC, try
#define USER_MESSAGE (WM_USER+100)
see the following article for details:
http://msdn.microsoft.com/library/en-us/winui/messques_5180.asp?frame=true
#define WM_USER 0x0400
#define WM_APP 0x8000
Range Meaning
0 through WM_USER – 1
Messages reserved for use by the system.
WM_USER through 0x7FFF
Integer messages for use by private window classes.
WM_APP through 0xBFFF
Messages available for use by applications.
0xC000 through 0xFFFF
String messages for use by applications.
Greater than 0xFFFF
Reserved by the system for future use.
......
Message numbers in the fourth range (0xC000 through 0xFFFF) are defined at run time when an application calls the RegisterWindowMessage function to retrieve a message number for a string. All applications that register the same string can use the associated message number for exchanging messages. The actual message number, however, is not a constant and cannot be assumed to be the same between different sessions.
WM_USER 0x0400
WM_APP 0x8000
WM_USER 比较老(Win3.x 就有了),一般提供给特定的控件定义自己的控件消息。之后因为控件种类逐渐增多,以至于用 WM_USER + XX 来定义某个进程内部某些窗体之间传递的消息已经不合适了,M$
建议
这类消息最好使用 WM_APP + XX
添加全局变量
在一个cpp中定义, 在一个h中再次extern