看起来唯一受支持的 Google 地球 API 是 JavaScript API。因此,您为此嵌入 Internet Explorer 的方法听起来很合理。
我对 MATLAB 的结尾不太熟悉,但假设您可以嵌入 Web 浏览器控件,那么您应该能够开始调用脚本。
在最低级别,IE Web 浏览器实现了 IWebBrowser2 接口。此接口公开一个 Document 属性,该属性返回一个 IHTMLDocument2 接口。调用 IHTMLDocument2::parentWindow 以获取 IHTMLWindow2 接口。
一旦你有了 IHTMLWindow2,从我的阅读中你有几个选择。您的脚本可以调用 IHTMLWindow2::execScript。或者,您的顶级 JavaScript 函数应该通过继承的 IDispatch 成为 IHTMLWindow2 接口上的方法:如果您需要返回值,则特别有用。
一些使用 execScript 的 Delphi 代码:http: //www.delphidabbler.com/articles? article=21
一些直接使用 IDispatch 的 .NET Framework 代码(参见注释掉的更复杂的代码示例): http ://www.west-wind.com/weblog/posts/2008/Sep/27/Calling-JavaScript-functions-in -the-Web-Browser-Control
长话短说,基本上你需要这样做:
myWebBrowser.Document.parentWindow.MyJavaScriptFunction()
或这个:
myWebBrowser.Document.parentWindow.execScript("MyJavaScriptFunction();", "JavaScript")