Tôi đang sử dụng trình bao bọc OpenTK OpenGL. Kể từ khi nó tải OpenGL dll (hoặc .so trên Linux) nó chứa rất nhiều chức năng nhập khẩu DLL.Cách kiểm tra xem điểm nhập DLL tồn tại trong C# mà không cần gọi hàm
Sự cố là, một số trình điều khiển không xuất tất cả các chức năng. Có cách nào để kiểm tra xem điểm nhập liệu có tồn tại không? Tôi cần phải làm điều này kể từ khi thực sự gọi chức năng trên các hệ thống có nó sẽ gây ra một vụ tai nạn nếu không được thực hiện trong trình tự thích hợp. Vì vậy, bắt ngoại lệ EntryPointNotFound không hoạt động trong trường hợp của tôi.
Thực ra, bạn không cần phải kiểm tra mã lỗi trên cuộc gọi đến GetProcAddress. Chỉ cần kiểm tra xem giá trị trả về là 0 hay không. Giá trị trả về là 0 (mà thực sự là một con trỏ) chỉ ra rằng không có biểu tượng nào của tên đó được xuất khẩu. –