Làm cách nào để tôi cài đặt các ràng buộc GDAL cho C # /. NET 4.5.1?


8

Tôi đang cố gắng sử dụng các ràng buộc C # gdal nhưng tôi gặp lỗi trong mã C # có nội dung "Không thể tải DLL 'gdal_wrap': Không thể tìm thấy mô-đun được chỉ định. (Ngoại lệ từ HRESULT: 0x8007007E)".

Tôi đã xem xét các phụ thuộc cho gdal_csharp.dll và mọi thứ đều ổn. Hai điều nổi bật là csharp dll là dll 32 bit, trong khi tất cả các phụ thuộc đều dành cho hệ thống 64 bit (máy của tôi có CPU 64 bit). Ngoài ra, tệp ieshims.dll được liệt kê dưới dạng phụ thuộc, nhưng từ những gì tôi thu thập được, không nhất thiết phải cài đặt nó.

Tôi đã thử cài đặt các tệp theo cách thủ công thông qua tệp zip và cũng sử dụng trình cài đặt .msi cho các thư viện lõi gdal. Tôi chắc chắn đã thêm các đường dẫn đến các tệp thực thi gdal vào đường dẫn hệ thống của mình.

Tôi đã tải xuống các tệp nhị phân từ đây: http : //www.gisi INTERNals.com/query.html?content=filelist&file=release-1800-x64-gdal-1-11-1-mapserver-6-4-1.zip

Và tôi đại khái đã làm theo hướng dẫn này để biết hướng dẫn cài đặt: http : //vipassanaandenviralinformatics.blogspot.co.nz/2013/03/getting-started-with-c-and-gdal.html

Tôi đang sử dụng Visual Studio 2013, trong đó các tệp nhị phân có sẵn trên trang web ở trên.


2
Câu hỏi này có giúp được gì không? stackoverflow.com/q/14353502/2258
Richard Morgan

Cảm ơn bạn đã đăng câu hỏi đó, tôi đã đặt gdal_wrap.dll vào walker phụ thuộc và hóa ra có một phụ thuộc bị thiếu gọi là gdal111.dll, tôi sẽ cố gắng theo dõi điều này và đăng cập nhật về tiến trình của tôi.
Andre Lashley

@AndreLashley Tôi gặp vấn đề tương tự khi không thể tải gdal_wrap. Bất kỳ đề xuất?
Rabbi tàng hình

@StealthRabbi Tôi đã kết thúc bằng cách sử dụng các công cụ dòng lệnh gdal thông qua mã OSGEO4W và C #. Nó dễ dàng hơn nhiều để thiết lập theo cách này. Nhưng tất nhiên bạn không nhận được tất cả lợi ích của việc sử dụng thư viện C # gdal.
Andre Lashley

1
Không biết bạn đã từng giải quyết vấn đề này chưa, nhưng điều này cho thấy tôi đang cố gắng giải quyết vấn đề tương tự, và cuối cùng tôi đã thêm một câu trả lời vào liên kết câu hỏi SO trong bình luận số một đã giải quyết vấn đề. Nếu nó giúp tôi vui vẻ đăng nó như một câu hỏi về câu hỏi này. SO-GIS dường như là một nơi thích hợp hơn.
choàng

Câu trả lời:


7

Nhận gói từ NuGet và sau đó bạn cần gọi phương thức tĩnh GdalConfiguration.ConfigureGdal()từ GdalConfiguration.cs/vblúc khởi động để đặt quy trình biến môi trường. Gọi GdalConfiguration.ConfigureOgr()nếu bạn muốn sử dụng OGR là tốt.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.