我想制作最简单的应用程序,可以通过 windows 发送消息(并解析 json)进行通信。我找到了一个示例代码:
CWnd* pWnd = FindWindow("old title");
pWnd->SendMessage(WM_SETTEXT,0,(LPARAM)"New title");
这行得通...但前提是我使用 MS Visual Studios“创建新的 MFC 表单应用程序”向导。如何制作一个向我的程序发送消息的控制台应用程序?或者我可以吗?如果我启动一个空项目或控制台应用程序,我需要包含/链接什么?
伪代码的目标:
a = ""
while !EOF
a += read(stdin)
commandArray = jsonToArray(a)
CWnd* pWnd = FindWindow("program");
pWnd->SendMessage(WM_COPYDATASTRUCT,0,commandArrayWrappedInCOPYDATASTRUCT);
exit
令人烦恼的是,代码的有效部分大约有 20 行(以上),但向导生成的部分有数百行。其中大部分是我不明白的东西。另外,我得到了一个我不需要的窗口。
编辑
最终的 main.cpp(没有 json 的东西):
/*
This closes calculator
*/
#include <Windows.h>
#include <atlstr.h>
int main (void)
{
HWND HWnd = FindWindow(NULL, CStringW("Calculator"));
SendMessage(HWnd, WM_CLOSE, 0, 0);
return 0;
}
朱哈
最佳答案
如果您想要如此简单的东西,那么我会完全忘记 MFC,并从新建项目向导中的基本控制台应用程序开始。对于如此简单的事情,MFC 似乎相当繁重。
关于c++ - 如何在空的 Visual C++ 项目(或控制台应用程序)中使用查找窗口和发送消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5248302/