using system.runtime.interopservices;
[dllimport("kernel32")]
private
static
extern
intgetprivateprofilestring(string section, string key, string def, stringbuilder retval, int size, string filepath);
這是c#中呼叫windowsapi讀取ini配置檔案的例子。
[dllimport("kernel32")]
這叫引入kernel32.dll這個動態連線庫。
private static extern void 函式名(引數,[引數]);
[attributeusage(attributetargets.method)]
public
class dllimportattribute: system.attribute
//定位引數為dllname
public callingconvention callingconvention; //引數指示入口點的呼叫約定。如果未指定 callingconvention,則使用預設值 callingconvention.winapi。
public charset charset; //引數指示用在入口點中的字符集。如果未指定 charset,則使用預設值 charset.auto。
public
string entrypoint; //引數給出 dll 中入口點的名稱。如果未指定 entrypoint,則使用方法本身的名稱。
public
bool exactspelling; //引數指示 entrypoint 是否必須與指示的入口點的拼寫完全匹配。如果未指定 exactspelling,則使用預設值 false。
public
bool preservesig; //引數指示方法的簽名應當被保留還是被轉換。當簽名被轉換時,它被轉換為乙個具有 hresult 返回值和該返回值的乙個名為 retval 的附加輸出引數的簽名。如果未指定 preservesig,則使用預設值 true。
public
bool setlasterror; //引數指示方法是否保留 win32"上一錯誤"。如果未指定 setlasterror,則使用預設值 false。
public
string value }
}
關於c 中的dllimport
msdn中對dllimportattribute的解釋是這樣的 可將該屬性應用於方法。dllimportattribute 屬性提供對從非託管 dll 匯出的函式進行呼叫所必需的資訊。作為最低要求,必須提供包含入口點的 dll 的名稱。並給了乙個示例 dllimport kernel32.dll e...
關於C 中的DLLImport
並給了乙個示例 dllimport kernel32.dll entrypoint movefilew setlasterror true,charset charset.unicode,exactspelling true,callingconvention callingconvention.s...
關於C 中的DLLImport
關於 c 中的 dllimport msdn 中對dllimportattribute 的解釋是這樣的 可將該屬性應用於方法。dllimportattribute 屬性提供對從非託管 dll 匯出的函式進行呼叫所必需的資訊。作為最低要求,必須提供包含入口點的 dll 的名稱。dllimport us...