在C#中使用GDAL时经常会爆出“unable to load shared library 'ogr_wrap' or one of its dependencies”,这种找不到指定模块的问题。网上现在提的解决办法大多是下载好GDAL-C#的几个DLL文件并保存到程序运行的目录下,也就是和项目生成的exe文件在同一文件夹下。这种方法不知道为啥对本人并不适用,可能是因为脸黑吧!
下载所需GDAL文件网址:GISInternals Support Site。
在这里主要想说明两个问题:
一、拷贝文件过去后仍然报错
拷贝文件时不仅需将Csharp文件夹内8个dll文件拷贝至项目程序目录下,还需将bin文件夹下文件各种dll文件拷贝过去。报错的很大部分原因是找不到相关的依赖项,调用dll的过程还会调用其它文件。
二、运行后报错:proj_identify:找不到 proj.db
打开gdal包,在gdal-share文件夹下,将对应文件复制到程序运行目录下。