C# 如何启动浏览器并稍后将其定向到页面?
我需要启动浏览器,做一些工作,然后让浏览器导航到URL(按该顺序)。C# 如何启动浏览器并稍后将其定向到页面?,c#,internet-explorer,browser,navigation,C#,Internet Explorer,Browser,Navigation,我需要启动浏览器,做一些工作,然后让浏览器导航到URL(按该顺序)。 第一部分当然很简单,我有一个Process对象。我不知道以后如何将其定向到目标页面? 如何将流程视为浏览器并使其导航到所需页面? 任何帮助、指针、代码片段都将不胜感激。如果您不需要IE的实际实例,可以使用System.Windows.Forms.WebBrowser控件。如果您不需要IE的实际实例,您可以使用System.Windows.Forms.WebBrowser控件。我认为,您可以向浏览器发送javascript来运行
第一部分当然很简单,我有一个Process对象。我不知道以后如何将其定向到目标页面?
如何将流程视为浏览器并使其导航到所需页面?
任何帮助、指针、代码片段都将不胜感激。如果您不需要IE的实际实例,可以使用System.Windows.Forms.WebBrowser控件。如果您不需要IE的实际实例,您可以使用System.Windows.Forms.WebBrowser控件。我认为,您可以向浏览器发送javascript来运行浏览器并将其指向站点,而不是向浏览器发送url
不确定这是否可行,但我认为没有理由不这样做。我认为,与其向浏览器发送url,不如向其发送javascript,让其运行并将浏览器指向某个站点
不确定这是否可行,但我看不出有什么理由不可行。我对这个问题的第一反应是DDE,但它似乎已经在Windows Vista中停用,所以这是不好的。羞耻,因为它是Windows中唯一一致的进程间通信(IPC)机制…哦,我多么怀念Amiga上的Arexx 无论如何,我相信下面的方法会奏效,但不幸的是,由于它的工作方式,它会启动Internet Explorer,而不考虑配置的浏览器
我将考虑一种尊重用户默认浏览器选择的方法。我对这个问题的第一反应是DDE,但它似乎已经在Windows Vista中停用,因此这是不好的。羞耻,因为它是Windows中唯一一致的进程间通信(IPC)机制…哦,我多么怀念Amiga上的Arexx 无论如何,我相信下面的方法会奏效,但不幸的是,由于它的工作方式,它会启动Internet Explorer,而不考虑配置的浏览器
我将考虑一种尊重用户默认浏览器选择的方法。不要启动浏览器&然后导航到页面,只需告诉操作系统您要运行URL即可。Windows将选择正确的浏览器,并将用户导航到给定的URL
System.Diagnostics.Process.Start("http://www.StackOverflow.com");
不要启动浏览器&然后导航到页面,只需告诉操作系统您要运行URL即可。Windows将选择正确的浏览器,并将用户导航到给定的URL
System.Diagnostics.Process.Start("http://www.StackOverflow.com");
如果您不需要在生产中执行此操作,可以使用WatiN之类的测试库执行此操作:
using WatiN.Core;
//Placeholder page to launch initial browser
IE ie = new IE("http://www.google.com");
DoSomeWork();
//Now navigate to the page you want
ie.GoTo("http://stackoverflow.com");
如果您不需要在生产中执行此操作,可以使用WatiN之类的测试库执行此操作:
using WatiN.Core;
//Placeholder page to launch initial browser
IE ie = new IE("http://www.google.com");
DoSomeWork();
//Now navigate to the page you want
ie.GoTo("http://stackoverflow.com");
实际上,我正在将其用于应用程序的桌面版本。对于web应用程序,我需要使用m/c上的默认浏览器。MohitC:如果这是“对于web应用程序”,那么您如何在最终用户的机器上获取流程对象?这是否在受控(内部网)环境中?我显然不理解这种情况。该应用程序将在本地运行,但需要生成一个浏览器,因此获取进程对象的工作原理与承载winform的应用程序的工作原理相同。实际上,我正在将其用于该应用程序的桌面版本。对于web应用程序,我需要使用m/c上的默认浏览器。MohitC:如果这是“对于web应用程序”,那么您如何在最终用户的机器上获取流程对象?这是否在受控(内部网)环境中?我显然不理解这种情况。该应用程序将在本地运行,但需要生成一个浏览器,因此获取流程对象的工作原理与承载winform的应用程序的工作原理相同。问题是以后如何使用流程对象,使其表现得像浏览器一样。发送URL或JS是同一回事。在启动流程时,您不能将其作为参数传入吗?我想我可能误解了你的要求,这里不可能有这种选择。正如我在问题1中所说的那样。需要启动浏览器2。做一些工作。让浏览器按该顺序导航到URL。啊哈…这高于我的薪资等级,抱歉。问题是以后如何使用Process对象,使其行为与浏览器一样。发送URL或JS是同一回事。在启动流程时,您不能将其作为参数传入吗?我想我可能误解了你的要求,这里不可能有这种选择。正如我在问题1中所说的那样。需要启动浏览器2。做一些工作。使浏览器导航到中的URL