ArcEngine10在VS2010中编译问题

简介: 原文 http://www.gisall.com/html/47/122747-4141.html 问题描述:          前段时间装了个VS2010,用ArcEngine10在VS2010中基于.

原文 http://www.gisall.com/html/47/122747-4141.html

问题描述:

         前段时间装了个VS2010,用ArcEngine10在VS2010中基于.Net Framework 3.5新建一个MapControl Application工程,创建过程如下:

1. Start Visual Studios 2010.
2. Select New Project….
3. Expand ArcGIS->Extending ArcObjects and select MapControl Application for Visual C# using the .NET Framework 3.5 and enter Project Name and OK.
4. This starts a new project list items (Properties, References, .cs code, etc) automatically added to the Solution Explorer.
5. At this point, I can Build the project either under DEBUG or RELEASE modes and using the x86 Solution Platform. and run the Project w/ or w/o Debugging and I get the basic, empty MapControl Application. Data can be loaded or .MXD files loaded w/o a problem

但是程序一运行便出类似以下的错误:
Error    1    未能加载文件或程序集“file:///C:/Program Files (x86)/ArcGIS/DeveloperKit10.0/DotNet/ESRI.ArcGIS.3DAnalyst.dll”或它的某一个依赖项。试图加载格式不正确的程序。 行 161,位置 5。   Form1.resx    161    5    WindowsFormsApplication2

 

通过手动加载这些类库文件也是出现一样的问题。

 

编译环境:

       操作系统:Windows 7 64bit旗舰版

   编译环境:VS 2010旗舰版 + ArcEngine 10

解决方法:

       方法一:这个问题是因为VS2010在构建.Net Framework 3.5, 3.0 or 2.0 on x64 machine的32位程序造成这样的问题,详细解决方法参见:http://support.microsoft.com/kb/2028833

       方法二:将应用程序修改到.Net Framework 4.0环境下,如下图:

目录
相关文章
|
7月前
|
数据可视化 安全 定位技术
【Unity 3D】常用插件DOTween、Haste、Exploder、KGFMapSystem介绍(图文解释)
【Unity 3D】常用插件DOTween、Haste、Exploder、KGFMapSystem介绍(图文解释)
417 0
基于C#的ArcEngine二次开发31:addin开发时调用ArcMap的进度条
基于C#的ArcEngine二次开发31:addin开发时调用ArcMap的进度条
基于C#的ArcEngine二次开发31:addin开发时调用ArcMap的进度条
|
数据采集 Linux 计算机视觉
Qt开发笔记之Qwt(一):Qwt介绍、编译与Demo
Qt开发笔记之Qwt(一):Qwt介绍、编译与Demo
Qt开发笔记之Qwt(一):Qwt介绍、编译与Demo
|
数据采集 计算机视觉 异构计算
Qt开发笔记之QCustomPlot:QCustomPlot介绍、编译与使用
Qt开发笔记之QCustomPlot:QCustomPlot介绍、编译与使用
|
C语言
gcc/g++ 静态动态库 混链接.
我的环境: centos6 x64. gcc4.4.7     在使用gcc/g++ 编译程序时我们希望指向一些库是使用静态的链接方式. 另外的一些是动态的方式. 我以boost 为例. 如果我们要使用静态库则是这样的: # g++ main.
1410 0
ArcEngine“不能再打开其它表了”的解决方法
查询的时候遇到ArcEngine“不能再打开其它表了”,突然间想起项目经理给我以前说的要把游标释放掉,当时不明白为什么,认为这个没有什么的呀,不就是一条条取数据吗?这次却发现这个问题了,原来是查询过于频繁,游标来不及释放,所以会出现问题,用System.Runtime.InteropServices.Marshal.ReleaseComObject()就可以解决。
763 0
|
前端开发 C语言 iOS开发
iOS开发你不知道的事-编译&链接
对于平常的应用程序开发,我们很少需要关注编译和链接过程。我们平常Xcode开发就是集成的的开发环境(IDE),这样的IDE一般都将编译和链接的过程一步完成,通常将这种编译和链接合并在一起的过程称为构建,即使使用命令行来编译一个源代码文件,简单的一句gcc hello.c命令就包含了非常复杂的过程! 正是因为集成开发环境的强大,很多系统软件的运行机制与机理被掩盖,其程序的很多莫名其妙的错误让我们无所适从,面对程序运行时种种性能瓶颈我们束手无策。
1160 0
|
JSON 数据格式 数据库管理