Warsztat.GD

Programowanie => Platformy => Windows => Wątek zaczęty przez: heavymental w Luty 27, 2017, 17:31:42

Tytuł: Odwrotność SendMessage
Wiadomość wysłana przez: heavymental w Luty 27, 2017, 17:31:42
Hi,
mam taki problem - potrzebuję z jednej aplikacji pobrać wartość do drugiej aplikacji.
Przykładowo:
Wiem jak działa SendMessage którym mogę wysłać wiadomość do innej aplikacji (np. tekst do notatnika)
LPCWSTR ClassN = (LPCWSTR)L"notepad";
HWND h = FindWindow(ClassN, 0);
HWND h2;
h2 = FindWindowEx(h, 0, (LPCWSTR)L"EDIT", (LPCWSTR)L"");

SendMessage(h2, WM_CHAR, (WPARAM)CONVERT('T'), 1);
Potrzebował bym jednak coś takiego w drugą stronę - pobrać wartość z notatnika do aplikacji.
Zapewne służy do tego GetMessage - jednak nie mogę ogarnąć jak to zrobić.

Z jakiej klasy, pola (komponent lable - wartość to tekst) wynajdę choćby programem WinID - nie mam pojęcia jednak jak sam pobór zrobić.
Tytuł: Odp: Odwrotność SendMessage
Wiadomość wysłana przez: Karol w Luty 27, 2017, 19:00:14
Chyba chodzi Ci o GetWindowText, a nie o GetMessage.
Tytuł: Odp: Odwrotność SendMessage
Wiadomość wysłana przez: FrozenShade w Luty 27, 2017, 21:32:53
Musiał byś się wpiąć w pętlę komunikatów i przechwycić ten, który cię interesuje, ale nie pytaj się mnie jak to się robi bo zwyczajnie nie pamiętam.

Generalnie sposobów jest więcej, ogólnie temat nazywa się inter-process communication, tu masz wiki: https://pl.wikipedia.org/wiki/Komunikacja_mi%C4%99dzyprocesowa

Polecam komunikacje na pajpach.
Tytuł: Odp: Odwrotność SendMessage
Wiadomość wysłana przez: koirat w Luty 27, 2017, 22:02:28
Opowi chyba nie chodzi o ipc on chce pobrać daną z aplikacji która nie obsługuje IPC.

3 minuty z google....

Cytuj
1) Use Spy++ to get the name of the class of the RichTextbox and the window
2) Then, retrieve the handle of the window (every control is a window with a handle) using the FindWindow (or FindWindowEx) function
3) If you successfully retrieved the handle to the RichTextBox, simply send a WM_GETTEXT message to the control to retrieve the text
Tytuł: Odp: Odwrotność SendMessage
Wiadomość wysłana przez: heavymental w Luty 28, 2017, 13:27:00
Okay, wielkie dzięki za naprowadzenie!