C# 不推荐使用Google Maps API时出错
我有一个很长时间没有使用的应用程序,客户想激活它。关键是这个应用程序使用了winforms geplugin控件库,该组件停止工作超过一年,因为它引用了一个不推荐使用的Google Earth API 是否有任何类似的组件允许原始功能或至少某种程度的.NET(C#)可操作性C# 不推荐使用Google Maps API时出错,c#,.net,winforms,google-earth-plugin,C#,.net,Winforms,Google Earth Plugin,我有一个很长时间没有使用的应用程序,客户想激活它。关键是这个应用程序使用了winforms geplugin控件库,该组件停止工作超过一年,因为它引用了一个不推荐使用的Google Earth API 是否有任何类似的组件允许原始功能或至少某种程度的.NET(C#)可操作性 请看这里: 开始: 让我们开始吧 使用Windows窗体在Visual Studio 2005或2008或更高版本中创建新的Windows应用程序 现在,将Web浏览器控件从工具箱拖放到窗体 当您在计算机上安装Googl
请看这里: 开始: 让我们开始吧 使用Windows窗体在Visual Studio 2005或2008或更高版本中创建新的Windows应用程序 现在,将Web浏览器控件从工具箱拖放到窗体 当您在计算机上安装Google Earth时,您将运行GoogleEarth.exe。在安装Google Earth的计算机上查找此exe,并将GoogleEarth.exe添加到Windows窗体应用程序的bin文件夹中 现在向Windows窗体应用程序添加一个新的HTML页面,并将填充代码添加到HTML页面 此脚本密钥由Google提供
<script src="http://www.google.com/jsapi?key=ABQIAAAAOh61kmAMajizdQht- Zz3MhReSrBDmGipqiQxKIYFIGIHpqaJ1BRq6XLUD-i7BPkx7XreIBQJ1MetxQ"> </script>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Sample</title>
<script src="http://www.google.com/jsapi?key=ABQIAAAAOh61kmAMajizdQht- Zz3MhReSrBDmGipqiQxKIYFIGIHpqaJ1BRq6XLUD-i7BPkx7XreIBQJ1MetxQ"> </script>
<script type="text/javascript">
var ge;
google.load("earth", "1");
function init() {
google.earth.createInstance('map3d', initCB, failureCB);
}
function initCB(instance) {
ge = instance;
ge.getWindow().setVisibility(true);
ge.getNavigationControl().setVisibility(ge.VISIBILITY_AUTO);
ge.getLayerRoot().enableLayerById(ge.LAYER_BORDERS, true);
ge.getLayerRoot().enableLayerById(ge.LAYER_ROADS, true);
}
function failureCB(errorCode) {
}
google.setOnLoadCallback(init);
</script>
</head>
<body>
<div id="map3d" style="height: 400px; width: 600px;">
</div>
</body>
</html>
现在构建并运行应用程序
或参见此处了解其他实现:
谷歌提供了一个JavaScript API,用于在HTML页面中包含与maps.Google.com具有相同功能的地图
在v2版中,您需要注册以获取使用库的API密钥,v3版是可选的,但建议注册,因为API有一个限制,您每天只能生成25000张地图,如果您需要支付更多费用,则需要注册,如果您注册,则可以:
获取每天生成的地图的统计信息
支付额外地图费用(每天超过25000张)
限制密钥的使用以防止在未经授权的网站上使用请查看以下内容: 开始: 让我们开始吧 使用Windows窗体在Visual Studio 2005或2008或更高版本中创建新的Windows应用程序 现在,将Web浏览器控件从工具箱拖放到窗体 当您在计算机上安装Google Earth时,您将运行GoogleEarth.exe。在安装Google Earth的计算机上查找此exe,并将GoogleEarth.exe添加到Windows窗体应用程序的bin文件夹中 现在向Windows窗体应用程序添加一个新的HTML页面,并将填充代码添加到HTML页面 此脚本密钥由Google提供
<script src="http://www.google.com/jsapi?key=ABQIAAAAOh61kmAMajizdQht- Zz3MhReSrBDmGipqiQxKIYFIGIHpqaJ1BRq6XLUD-i7BPkx7XreIBQJ1MetxQ"> </script>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Sample</title>
<script src="http://www.google.com/jsapi?key=ABQIAAAAOh61kmAMajizdQht- Zz3MhReSrBDmGipqiQxKIYFIGIHpqaJ1BRq6XLUD-i7BPkx7XreIBQJ1MetxQ"> </script>
<script type="text/javascript">
var ge;
google.load("earth", "1");
function init() {
google.earth.createInstance('map3d', initCB, failureCB);
}
function initCB(instance) {
ge = instance;
ge.getWindow().setVisibility(true);
ge.getNavigationControl().setVisibility(ge.VISIBILITY_AUTO);
ge.getLayerRoot().enableLayerById(ge.LAYER_BORDERS, true);
ge.getLayerRoot().enableLayerById(ge.LAYER_ROADS, true);
}
function failureCB(errorCode) {
}
google.setOnLoadCallback(init);
</script>
</head>
<body>
<div id="map3d" style="height: 400px; width: 600px;">
</div>
</body>
</html>
现在构建并运行应用程序
或参见此处了解其他实现:
谷歌提供了一个JavaScript API,用于在HTML页面中包含与maps.Google.com具有相同功能的地图
在v2版中,您需要注册以获取使用库的API密钥,v3版是可选的,但建议注册,因为API有一个限制,您每天只能生成25000张地图,如果您需要支付更多费用,则需要注册,如果您注册,则可以:
获取每天生成的地图的统计信息
支付额外地图费用(每天超过25000张)
限制密钥的使用,以防止在未经授权的网站上使用经过几次测试,并遵循小组的优秀建议,另一篇帖子的建议显然解决了这个问题,并且肯定是与IE和嵌入WebView类型对象的Javascript中的Google Maps API的兼容性问题
将meta转换为支持HTML的兼容性:经过几次测试,并遵循小组的优秀建议,另一篇文章的建议显然解决了这个问题,并且肯定是与IE和嵌入WebView类型对象的Javascript中的Google Maps API的兼容性问题
将meta设置为启用HTML的兼容性:感谢您的帮助,但我有相同的回答:“var error=new error(“模块:'earth'未找到!”);error.toString=function(){return this.message;}throw error;”这就是不推荐使用的API。删除旧的winforms geplugin控件库,并在回答中使用上面的一个示例。我使用Maps API 3.21创建了一个全新的项目,在onions.js出现错误之前,一切正常。显然,这是默认情况下使用Visual Studio的嵌入式API和WebBrowser的兼容性问题。感谢您的帮助,但我有相同的回答:“var error=new error(“Module:'earth'not found!”);error.toString=function(){return this.message;}throw error这就是不推荐使用的API。删除旧的winforms geplugin控件库,并在回答中使用上面的一个示例。我使用Maps API 3.21创建了一个全新的项目,在onions.js出现错误之前,一切正常。显然,这是与默认使用Visual Studio的嵌入式API和WebBrowser的兼容性问题。我认为答案是
否
。我们仅通过KML在安装了GEPro的PC上使用GE。恐怕旧的API功能无法替代。但愿我错了。您需要什么API函数?我仍然处于检测模式以确定程序的功能,但是API的问题占用了我很多时间。我设法改变了Earth对地图API的使用,甚至做了一些例子,但现在我对onis.js有一个问题,显然是一个与IE相关的主题或使用的WebBrowser。你已经意识到你把Google Earth和Google Maps混在一起了-对吗?谷歌地球安装了桌面软件。谷歌地图是一个基于云的系统。谷歌地球也有一个API…不仅仅是一个桌面应用程序。我想答案是否
。我们仅通过KML在安装了GEPro的PC上使用GE。恐怕旧的API功能无法替代。但愿我错了。您需要什么API函数?我仍然处于检测模式以确定程序的功能,但是API的问题占用了我很多时间。我设法改变了Earth对地图API的使用,甚至做了一些例子,但现在我