Tôi sẽ tạo một trình bao bọc Managed-C++ xung quanh một số hàm C để cho phép sử dụng nó trong các giải pháp .NET khác. Tôi nhìn vào việc cung cấp một wrapper rất tối giản, một cái gì đó như:Tôi có thể kiểm tra trình bao bọc được quản lý xung quanh mã C bằng cách nào?
Chữ ký trong tiêu đề C:
void DOSTH(const char*, short, long*);
Tiếp xúc giao diện quản lý:
public void doSomething(String^ input, short param, [Out] long^ %result);
Để làm như vậy giải pháp của tôi sẽ có C tiêu đề và sẽ tham chiếu đến .dll chứa API C đã biên dịch mà tôi đang xây dựng dựa trên đó.
Là người mới sử dụng Visual Studio, tôi không chắc chắn làm cách nào để đơn vị kiểm tra điều này. Có thể loại bỏ các .dll để cung cấp một thực hiện giả? Có thư viện nào có thể làm cho công việc này dễ dàng không? Có một cấu trúc giải pháp cụ thể nào tôi nên nhắm đến để làm cho việc này dễ dàng hơn không?
Bất kỳ hướng dẫn nào trong lĩnh vực này đều tuyệt vời. Các tìm kiếm của Google đã khiến tôi muốn biết thêm thông tin về đơn vị kiểm tra trình bao bọc được quản lý.
Thật không may là không - phần đó dễ dàng hơn nhiều. Tôi đang tìm một cách để kiểm tra wrapper của tôi, không phải là mã sử dụng wrapper của tôi. – Bringer128
Sau đó, bạn sẽ phải thêm wrapper của bạn và dll bản địa cho dự án thử nghiệm của bạn trong cùng một cách chính xác, bạn sẽ phải thêm nó vào tất cả các ứng dụng sẽ sử dụng nó sau này. Cá nhân tôi cố gắng tránh sử dụng các hội đồng bản địa bất cứ khi nào có thể. Các vấn đề với việc triển khai, (tự động) xây dựng, nền tảng sai (x86 so với x64) và thiếu các phiên bản gốc làm hỏng ứng dụng của bạn trong thời gian chạy thường không đáng để gặp rắc rối. –