我有一个显示显卡名称,品牌和其他信息的标签,我正在努力制作它,以便在点击时打开Firefox并在Google上搜索该卡的名称。
我尝试使用“让你遇到谷歌”,但它会逐个搜索每项工作。
这是我到目前为止所尝试过的,它有点有用,但它有问题:
private void label13_Click(object sender, EventArgs e)
{
ManagementObjectSearcher Vquery = new ManagementObjectSearcher(
"SELECT * FROM Win32_VideoController");
ManagementObjectCollection Vcoll = Vquery.Get();
foreach (ManagementObject mo in Vcoll)
{
System.Diagnostics.Process CcleanerA = System.Diagnostics.Process
.Start(@"C:\Program Files (x86)\Mozilla Firefox\firefox.exe",
"http://google.com/?q="+(mo["name"].ToString()));
}
}
好吧,我得到它来搜索正确的东西,但它搜索了两次,在2个标签中,所以有什么不对?
private void Vcard_Click(object sender, EventArgs e)
{
ManagementObjectSearcher Vquery = new ManagementObjectSearcher("SELECT * FROM Win32_VideoController");
ManagementObjectCollection Vcoll = Vquery.Get();
foreach (ManagementObject mo in Vcoll)
{
System.Diagnostics.Process.Start("http://www.google.ca/search?hl=en&q=" + mo["name"].ToString());
}
}
答案 0 :(得分:5)
Process.Start(...)
在这种情况下,你可能是最好的朋友。您可以使用它来启动Firefox。如果FF已经打开,FF应该打开一个新标签。
FF可执行文件后面的第一个参数是要浏览的URL。
然而您应该只是启动网址,这将打开默认浏览器。
System.Diagnostics.Process.Start("http://www.microsoft.com");
修改强>
您知道,Google有一个向全世界展示的搜索API,您可以使用API搜索产品,然后在程序中显示结果列表!那你就不是依赖浏览器了。
同时强>
.NET中有一个WebBrowser控件,您可以将人们导航到google GET Url:
http://www.google.ca/search?hl=en&q=的 NVIDIA + 7900 强>
答案 1 :(得分:0)
这是基本的Google搜索技术101 - 您拥有所谓的短语(即由多个单词组成的名称),因此您需要在执行搜索之前用引号将它们包围起来。
您还应该考虑将搜索字词转换为小写字母,如果短语中有任何大写字母,则Google会使搜索区分大小写,这可能会缩小搜索结果集。