2016-06-14 629 views
0

我正在尝试创建一个CoordinateTransformation来转换shapefile的SRS。然而,在试图创建一个与下面的方法调用:'OSGeo.OSR.OsrPINVOKE'的类型初始值设定项引发异常

var sourceSrs = new SpatialReference(Osr.SRS_WKT_WGS84); 

我得到异常:

为“OSGeo.OSR.OsrPINVOKE”的类型初始值引发异常。

详细的例外是这样的:

Exception

谁能帮助?

+0

我已经在[GIS SE](http://gis.stackexchange.com/q/198362/30966)上提出了这个问题。 – displayName

+0

“糟糕的图像格式”指出了体系结构可能存在的差异 - 例如,为x86构建的某些内容试图与为x64构建的内容进行交互。大部分内容可能隐藏在您使用的库内部的P/Invoke调用之后。 –

+0

@Cᴏʀʏ:你绝对正确。所以,我从单元测试运行这个代码。我将“测试设置”下的“默认进程架构”设置为x64。我仍然得到这个例外。任何其他设置我需要改变(你可以想到)? – displayName

回答

0

强制项目为x64的目标平台构建帮助。您可以通过转到项目属性(快捷键:Alt + 输入)> Build> Platform Target。

此外,如果您正在运行某些单元测试的代码,请对单元测试项目执行相同的操作,将“默认过程体系结构”更改为x64。 “默认进程架构”可以从测试(在VS菜单项中)>测试设置>默认处理器架构> x64进行更改。

相关问题