アクティブなプログラムと、ブラウザーの場合にアクセスしている Web サイトをログに記録する必要があるプログラムを作成しています。IE でアドレス バー ウィンドウの内容を取得するコードがありますが、クロムで winspy を使用すると、すべてが 1 つのウィンドウとして返されます。アドレスバーの内容をスクレイピングする方法があるかどうか誰か知っていますか?
私がIEで作業しているコードは次のとおりです。
HWND foreground = GetForegroundWindow();
HWND hwndEdit = FindWindowEx(foreground, NULL, "EDIT", NULL);
HWND handle = FindWindowEx(foreground, NULL, "WorkerW", "Navigation Bar");
if (NULL != handle)
{
handle = FindWindowEx(handle, NULL, "ReBarWindow32", NULL);
if (NULL != handle)
{
handle = FindWindowEx(handle, NULL, "Address Band Root", NULL);
}}
HWND hwndEdit = FindWindowEx(handle, NULL, "Edit", NULL);
const int bufferSize = 5024;
Char textBuffer[bufferSize] = "";
SendMessage(hwndEdit, WM_GETTEXT, (WPARAM)bufferSize, (LPARAM)textBuffer);
string addressbartext = textBuffer;
if(addressbartext == "AutoCompleteProxy")
{addressbartext = "";}
else
{addressbartext = textBuffer;
}
cout << addressbartext;