我使用c#using;
导航网址SHDocVw.InternetExplorer IE = new SHDocVw.InternetExplorer();
IE.Navigate2("http://example.org");
它在后端使用iexplore.exe(Internet Explorer)来导航网址。 但我希望程序使用“iexplore.exe -embedding”而不是“iexplore.exe”,意味着我想在使用iexplore.exe的程序时添加该命令
这样做的正确方法是什么?
答案 0 :(得分:1)
您可以通过命令行
运行ieexplorer作为新进程var main = (ToolStripDropDownItem) menuMain.Items["File"];
var sub = main.DropDownItems[0]
答案 1 :(得分:0)
正如@Jacek指出的那样,您可以使用whatever CLI flags you want运行自己的流程。然后你只需要使用SHDocVw.ShellWindows迭代所有现有的IE实例来找到你开始的那个。
在这方面您有几个选项,您可以交叉引用Process.Start()的Id property的结果来为您提供一个PID,您可以将其与之前发现的已知PID进行比较以查找“新的一个。您还可以导航到该URL in the ShellWindows() iteration的唯一网址和过滤条件。
如果您需要跨流程调用维护该浏览器的参考点,或者在浏览器实例中进行后续用户导航,您还可以使用PutProperty为其分配一个唯一的键值对,您可以再次引用它再次跨多个主机进程调用(IE窗口必须保持运行以使此值保持不变。)