Как использовать окно поиска и sendmessage в пустом проекте Visual C ++ (или консольное приложение) - PullRequest
1 голос
/ 09 марта 2011

Я хочу сделать самое простое приложение, которое может общаться через Windows отправлять сообщения (и анализировать JSON).Я нашел пример кода:

CWnd* pWnd = FindWindow("old title");
pWnd->SendMessage(WM_SETTEXT,0,(LPARAM)"New title");

Это работает ... но только если я использую мастер MS Visual Studios "Создать новое приложение формы MFC".Как я могу создать консольное приложение, которое отправляет сообщения в мою программу?Или я могу?Что мне нужно включить / link, если я запускаю пустой проект или консольное приложение?

Цель в псевдокоде:

a = ""
while !EOF
  a += read(stdin)

commandArray = jsonToArray(a)

CWnd* pWnd = FindWindow("program");
pWnd->SendMessage(WM_COPYDATASTRUCT,0,commandArrayWrappedInCOPYDATASTRUCT);

exit

Раздражает то, что эффективная часть кода примерно20 строк (выше), но сгенерированная мастером часть составляет сотни строк.И большинство из них - вещи, которые я не понимаю.Кроме того, я получаю окно, которое мне не нужно.

РЕДАКТИРОВАТЬ

Final 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;
}

br,

Юха

1 Ответ

1 голос
/ 09 марта 2011

Если вы хотите что-то настолько простое, тогда я просто забуду все о MFC и начну с базового консольного приложения из Мастера новых проектов.MFC кажется довольно тяжелым делом для чего-то такого простого.

...