Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/145.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 向google chrome地址栏发送文本_C++_Windows_Winapi - Fatal编程技术网

C++ 向google chrome地址栏发送文本

C++ 向google chrome地址栏发送文本,c++,windows,winapi,C++,Windows,Winapi,我想向google chrome地址栏发送一个url。我用CreateProcess()winapi打开了谷歌浏览器的一个进程。然后我发现窗户上有 Hwnd hwnd = FindWindow("Chrome_WidgetWin_1", "New Tab - Google Chrome"); 我想通过窗口消息发送url的文本,但它无法工作 SendMessage(hwnd, WM_CHAR, 'A',1); 也许有人能给我指出正确的方向。也许还有另一种方法可以将字符发送到谷歌地址栏 如果只想

我想向google chrome地址栏发送一个url。我用
CreateProcess()
winapi打开了谷歌浏览器的一个进程。然后我发现窗户上有

Hwnd hwnd = FindWindow("Chrome_WidgetWin_1", "New Tab - Google Chrome");
我想通过窗口消息发送url的文本,但它无法工作

SendMessage(hwnd, WM_CHAR, 'A',1);

也许有人能给我指出正确的方向。也许还有另一种方法可以将字符发送到谷歌地址栏

如果只想打开带有地址的chrome,只需为chrome.exe创建
CreateProcess
,并将url作为命令行参数传递


如果你想搞乱现有的chrome标签,这是违反用户预期的,可能会带来安全风险。

SetWindowText()
也许吧?我想将url的文本发送到google chrome的地址栏,而不是发送到该标签的标题window@TheBrowser你可能需要得到地址栏控件的句柄,它与IE不同,IE中有地址栏控件的hwnd。我使用spy++并且没有看到地址控件的hwnd。也许在谷歌,他们使用了一些不同的东西,而Chrome没有通过本地窗口实现地址栏,这是行不通的(除了出于许多其他原因)。然而,这一进程正在进行中。在那之前,使用。我想搞乱第二个选项。Chrome本身不提供“重用标签”选项,你需要编写浏览器插件,或者在mac上使用apple脚本。其他任何东西(例如replay宏:ctrl-L、address、enter)都是黑客行为。您认为有什么安全风险?我看不到。直接读取用户的当前url地址显然有损用户隐私,在某些情况下可能会暴露用户会话密钥。在没有用户意识的情况下编写/更改用户的当前页面可能会向用户呈现虚假页面,想象一下,您在检查gmail时,chrome突然更改为虚假登录页面,告诉您会话已过期并请求密码,用户可能不知道地址已更改。这是一种安全风险吗?执行这些操作的应用程序只有在授予足够权限的安全上下文中运行时才能执行这些操作。