DllImport的用法在這裏有什麼區別?具體來說,「user32」只是表示「user32.dll」,還是表示「user32.lib」或其他?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);
你可能會忽略CharSet和CallingConvention。
如果他們是一樣的,我可以重寫這個更加一致,但如果不是這樣,我不想有一堆的問題。
[這是構造函數的MSDN頁](http://msdn.microsoft.com/en-us/library/system.runtime.interopservices.dllimportattribute.dllimportattribute.aspx)以供參考。 – Guvante 2012-03-05 22:28:38
相關文檔是[LoadLibrary](http://msdn.microsoft.com/en-us/library/windows/desktop/ms684175(v = vs.85).aspx)。 *如果字符串指定一個沒有路徑的模塊名稱,並且省略了文件擴展名,則該函數會將缺省庫擴展名.dll附加到模塊名稱中。爲防止函數將.dll附加到模塊名稱中,請在模塊名稱字符串中包含尾隨點字符(。)。* – 2012-03-06 18:51:40