C#中使用API函數(shù)ShellExecute
2009-11-11
來(lái)自:CSDN博客
字體大?。骸?a href="">大 中 小】
- 摘要:光大項(xiàng)目的三期已經(jīng)啟動(dòng)了,,我已經(jīng)沒(méi)有多少時(shí)間寫DeviceAnywhere了,昨天晚上努力了一把Desktop端基本上寫的差不多了,。在寫幫助菜單的時(shí)候還是按著慣例想加入一個(gè)“聯(lián)系作者”菜單,,其中就兩個(gè)功能點(diǎn),其一就是點(diǎn)擊“博客”按鈕打開http://blog.csdn.net/wellwelcome,,其二則是點(diǎn)擊“E-mail”按鈕調(diào)用系統(tǒng)默認(rèn)的郵件程序發(fā)送郵件給[email protected],。在寫delphi的時(shí)候這兩個(gè)功能非常簡(jiǎn)單,只要用ShellExecute這個(gè)Api函數(shù)就可以了,,delphi對(duì)shell32.dll進(jìn)行了封裝就是ShellApi單元,,而.net大家都知道的用api函數(shù)必須自己invoke,還好有delphi的功底,,下面把我的方法寫出來(lái),,姑且作為備忘吧,哈哈,!
-
光大項(xiàng)目的三期已經(jīng)啟動(dòng)了,,我已經(jīng)沒(méi)有多少時(shí)間寫DeviceAnywhere了,昨天晚上努力了一把Desktop端基本上寫的差不多了,。在寫幫助菜單的時(shí)候還是按著慣例想加入一個(gè)“聯(lián)系作者”菜單,,其中就兩個(gè)功能點(diǎn),其一就是點(diǎn)擊“博客”按鈕打開http://blog.csdn.net/wellwelcome,,其二則是點(diǎn)擊“E-mail”按鈕調(diào)用系統(tǒng)默認(rèn)的郵件程序發(fā)送郵件給[email protected],。在寫delphi的時(shí)候這兩個(gè)功能非常簡(jiǎn)單,,只要用ShellExecute這個(gè)Api函數(shù)就可以了,delphi對(duì)shell32.dll進(jìn)行了封裝就是ShellApi單元,,而.net大家都知道的用api函數(shù)必須自己invoke,,還好有delphi的功底,下面把我的方法寫出來(lái),,姑且作為備忘吧,,哈哈!
以下為函數(shù)的聲明和函數(shù)參數(shù)的聲明:
[DllImport("shell32.dll")]
public extern static IntPtr ShellExecute(IntPtr hwnd,
string lpOperation,
string lpFile,
string lpParameters,
string lpDirectory,
int nShowCmd
);
public enum ShowWindowCommands : int
{
SW_HIDE = 0,
SW_SHOWNORMAL = 1,
SW_NORMAL = 1,
SW_SHOWMINIMIZED = 2,
SW_SHOWMAXIMIZED = 3,
SW_MAXIMIZE = 3,
SW_SHOWNOACTIVATE = 4,
SW_SHOW = 5,
SW_MINIMIZE = 6,
SW_SHOWMINNOACTIVE = 7,
SW_SHOWNA = 8,
SW_RESTORE = 9,
SW_SHOWDEFAULT = 10,
SW_MAX = 10
}
一下則是為實(shí)現(xiàn)我上述兩個(gè)功能的函數(shù)調(diào)用:
1,、訪問(wèn)http://blog.csdn.net/wellwelcome
ShellExecute(this.Handle, "open", "http://blog.csdn.net/wellwelcome", null, null, (int)ShowWindowCommands.SW_SHOW);
2,、email [email protected]
ShellExecute(this.Handle, "open", "mailto:[email protected]", null, null, (int)ShowWindowCommands.SW_SHOW);
|