Как извлечь текст из метки внутри groupbox другого приложения, используя C #? - PullRequest
0 голосов
/ 02 октября 2018

Я пытаюсь извлечь номер телефона из этого окна: enter image description here

Я сканировал классы окон, используя Spy ++, получил " Звонящий " groupbox, извлекло только это имя заголовка: "Звонящий", но не смог прочитать номер телефона внутри groupbox:

using System.Runtime.InteropServices;


const int WM_GETTEXT = 0x0D;


[DllImport("user32.dll", EntryPoint = "SendMessageW")]
public static extern int SendMessageW([InAttribute] System.IntPtr hWnd, int Msg, int wParam, IntPtr lParam);



public static string GetText(IntPtr handle)
{
            int maxLength = 512;
            IntPtr buffer = Marshal.AllocHGlobal((maxLength + 1) * 2);
            SendMessageW(handle, WM_GETTEXT, maxLength, buffer);
            string w = Marshal.PtrToStringUni(buffer);


            Marshal.FreeHGlobal(buffer);
            return w;
}

, и я пытаюсь извлечь текст следующим образом:

 var ptr = new IntPtr(0x000308EE);
 var t = GetText(ptr);

Получение только текста «Звонящий» в t переменной.Как я могу получить номер телефона изнутри groupbox ?

...