https://msdn.microsoft.com/en-us/library/ms182161.aspxLớp NativeMethods có được xử lý đặc biệt trong .NET không?
Có ba lớp được mô tả trong phân trang này được xử lý đặc biệt trong Khuôn khổ .NET không? (NativeMethods, SafeNativeMethods và UnsafeNativeMethods)
Lý do tôi hỏi là tôi tự hỏi liệu có ổn không khi tạo ra các loại lớp NativeMethods. Ví dụ:
ComNativeMethods
User32NativeMethods
OleStorageNativeMethods
giải thích của tôi về liên kết mà là nó là một quy ước, không phải là thời gian chạy không có gì khác biệt. Nhà phát triển chịu trách nhiệm đưa các thuộc tính bảo mật thích hợp vào các lớp. Ví dụ: "NativeMethods - Lớp này không ngăn chặn truy cập stack cho phép mã không được quản lý. (System.Security.SuppressUnmanagedCodeSecurityAttribute không được áp dụng cho lớp này.)" –
Cũng có liên quan: "Các lớp này giống với lớp NativeMethods, tuy nhiên, chúng được đánh dấu bằng cách sử dụng một thuộc tính đặc biệt được gọi là SuppressUnmanagedCodeSecurityAttribute Khi thuộc tính này được áp dụng, thời gian chạy không thực hiện một bước đi đầy đủ để đảm bảo rằng tất cả người gọi có quyền UnmanagedCode.Thời gian chạy thường kiểm tra sự cho phép này khi khởi động. bạn nên sử dụng thuộc tính này một cách cẩn trọng. Nó có thể có những tác động bảo mật nghiêm trọng nếu nó được triển khai không chính xác .. " –
Cảm ơn bạn, tôi đã sửa chữa. Tôi đã cập nhật câu trả lời của mình. –