Sự khác biệt giữa tập quán DllImport ở đây là gì? Cụ thể, không "user32" chỉ có nghĩa là "user32.dll", hoặc có nghĩa là "user32.lib" hay cái gì khác?DllImport user32 vs user32.dll
[DllImport("user32")]
protected static extern int GetKeyboardState(byte[] pbKeyState);
[DllImport("user32.dll", CharSet = CharSet.Auto, CallingConvention = CallingConvention.StdCall)]
protected static extern short GetKeyState(int vKey);
Bạn có thể bỏ qua CharSet và CallingConvention.
Nếu chúng giống nhau, tôi có thể viết lại điều này để phù hợp hơn, nhưng nếu không, tôi không muốn có một loạt vấn đề với nó.
[Đây là trang MSDN trên hàm tạo] (http://msdn.microsoft.com/en-us/library/system.runtime.interopservices.dllimportattribute.dllimportattribute.aspx) để tham chiếu. – Guvante
Tài liệu liên quan là dành cho [LoadLibrary] (http://msdn.microsoft.com/en-us/library/windows/desktop/ms684175 (v = vs.85) .aspx). * Nếu chuỗi chỉ định tên mô-đun không có đường dẫn và phần mở rộng tên tệp bị bỏ qua, hàm sẽ thêm phần mở rộng thư viện mặc định .dll vào tên mô-đun. Để ngăn chức năng gắn thêm .dll vào tên mô-đun, hãy bao gồm ký tự dấu chấm (.) Trong chuỗi tên mô-đun. * –