Tôi đang làm việc trên Ứng dụng web trên máy tính Windows 8 64 bit sử dụng nhiều thư viện hiện có. Tôi muốn sử dụng hai C# DLL tham chiếu một DLL gốc. Cả hai C# DLL được biên dịch để sử dụng 64bit và được thử nghiệm trong các ứng dụng thử nghiệm. Ứng dụng web của tôi tham chiếu cả C# DLL và được cho là chạy trên IIS 8. Tôi đã thêm hai C# DLL làm tham chiếu đến dự án và DLL gốc theo cách thủ công vào thư mục bin của ứng dụng web. Bất cứ khi nào tôi xây dựng và chạy giải pháp, tôi nhận được ngoại lệ được hiển thị trong tiêu đề. Tôi biết rằng đây là dấu hiệu cho một vấn đề liên quan đến mã 32 bit và 64 bit đang chạy trong một quy trình. Vì vậy, tôi đã thử tất cả các cấu hình xây dựng khác nhau nhưng kết quả không bao giờ thay đổi.BadImageFormatException: Không thể tải tệp hoặc lắp ráp ... định dạng sai - Chỉ với Ứng dụng Web
Tôi đã tạo ứng dụng bảng điều khiển làm chính xác những gì tôi đang cố gắng trong ứng dụng web và nó hoạt động hoàn hảo. Ứng dụng web có cùng cài đặt chính xác tuy nhiên ném ngoại lệ, đây là điều thực sự gây nhầm lẫn cho tôi.
gì tôi đã cố gắng cho đến nay:
- Thay đổi ứng dụng hồ bơi thiết lập để "cho phép các ứng dụng 32-bit"
- xây dựng tất cả các DLL với Bất kỳ CPU, 64Bit hoặc x86 mục tiêu
- Kiểm tra CorFlags của tất cả Các tệp DLL
Tôi có thể cung cấp dự án xuất cho tất cả mọi người sẵn sàng giúp tôi chạy cấu hình này!
Tôi thực sự đánh giá cao mọi trợ giúp!
Bạn có giải pháp nào cho điều này không?Bởi vì chúng tôi cũng gặp vấn đề tương tự, và chúng tôi đã không tìm thấy một giải pháp làm việc cho đến bây giờ. –
Hi Saeed, xin lỗi vì câu trả lời trễ của tôi. Vì dự án của tôi là một ứng dụng web, tôi quyết định tạo một ứng dụng web thứ hai dưới dạng một dịch vụ web làm cho chức năng của dll gốc có sẵn thông qua REST. Tôi không tìm thấy giải pháp nào khác cho vấn đề. – JZet