【发布时间】:2010-01-20 14:59:45
【问题描述】:
我正在尝试使用我的 C# 应用程序从浏览器(即,opera、firefox..)中获取选定的文本。 我尝试了 SendKeys.Send("^c") 然后从剪贴板读取选定的值,此方法适用于 ie 和 Firefox..,但不适用于 Google Chrome。
我如何从谷歌浏览器中获取选定的文本以及为什么 SendKeys.Send("^c") 不起作用?
【问题讨论】:
-
Chrome 在单独的进程中处理标签,这可能是你的问题。
-
gf 是对的,记住至少有 2 个 chrome 进程正在运行。您必须弄清楚哪个 chrome.exe 进程引用了您尝试执行命令的窗口。尝试使用 --single-process 运行 chrome 以查看它是否有效(不建议继续使用)
-
大家好,感谢您的回复,我不认为单独进程中的选项卡是我的问题,因为我有要复制选择的页面的句柄,但我尝试了 PostMessage 方法但没有成功.下面是使用的方法。私有常量 uint VK_CONTROL = 0x11;私有常量 uint VK_C = 0x43; [DllImport("user32.dll", SetLastError = true)] static extern bool PostMessage(int hwnd, uint Msg, int wParam, int lParam); PostMessage(googleChromePageHandle, VK_CONTROL, (int)VK_C, 0);
标签: c# c++ winapi google-chrome