extren主要用于聲明在外部實(shí)現(xiàn)的方法,什么叫外部實(shí)現(xiàn)的方法呢,一般說(shuō)來(lái)就是用System.Runtime.InteropServices服務(wù)的DllImport方法引入非托管代碼程序集。例如調(diào)用程序API,C語(yǔ)言寫的方法等等。在這種情況下,聲明必須為static
同時(shí),extren關(guān)鍵字還可以定義外部程序集別名,使得可以從單個(gè)程序集中引用同一組件的不同版本。
下面是一個(gè)改寫自MSDN上的簡(jiǎn)單的例子,調(diào)用系統(tǒng)winmm.DLL播放wav文件:
//系統(tǒng)API的調(diào)用的聲明
[System.Runtime.InteropServices.DllImport("winmm.DLL", EntryPoint = "PlaySound", SetLastError = true)]
public static extern void PlaySound(string path,System.IntPtr hMod,PlaySoundFlags flags);
//調(diào)用該方法
string path = @“c:22.wav”;
try
{
PlaySound(path, new System.IntPtr(), PlaySoundFlags.SND_SYNC);
}
catch (Exception ex)
{
throw (ex);
}
更多信息請(qǐng)查看IT技術(shù)專欄