溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在ASP.NET中執(zhí)行windows程序

發(fā)布時間:2021-10-28 15:48:31 來源:億速云 閱讀:145 作者:柒染 欄目:編程語言

本篇文章為大家展示了怎么在ASP.NET中執(zhí)行windows程序,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

如何ASP.NET中執(zhí)行windows程序。新建一個asp.net頁面Default.aspx,在上面放一個按鈕,進入Default.aspx.cs頁面填寫后臺處理程序。 

ASP.NET中執(zhí)行windows程序步驟1、調(diào)用win32函數(shù)ShellExecute。 

添加引用using System.Runtime.InteropServices; 

聲明函數(shù): 

[DllImport("shell32.dll")]    private static extern IntPtr ShellExecute(IntPtr hwnd, string lpOperation, string lpFile, string lpParameters, string lpDirectory, Int32 nShowCmd);

在按鈕的單擊事件處理程序中調(diào)用前面生明的ShellExecute函數(shù):

ShellExecute(IntPtr.Zero, "open", "c:\\windows\\notepad.exe", null, null, 1);    //文件名可以不加后綴,如"c:\\windows\\notepad"

程序完成 

ASP.NET中執(zhí)行windows程序步驟2、用.NET Framework中的Process類 

添加引用using System.Diagnostics; 

在按鈕的單擊事件處理程序中填入以下代碼: 

Process process = new Process();    process.StartInfo.FileName = "c:\\windows\\notepad.exe";    //文件名必須加后綴。    process.Start();

程序完成。 

注意:在asp.net2.0中運行以上兩種方法寫的程序都可以得到想要的結(jié)果。但是在asp.net1.1或更早的版本卻不能得到想要的結(jié)果,打開任務治理器甚至可以看到進程已經(jīng)存在(編譯器也沒有報錯),但就是看不到執(zhí)行效果,這是微軟為了安全原因禁掉了程序的運行,你需要做以下兩步才能正常運行: 

1、在桌面右鍵單擊“我的電腦”,選擇治理,展開“服務和應用程序”節(jié)點,選擇“服務”項;從右側(cè)的服務列表中找到“IIS Admin”項,右擊鼠標,選擇“屬性”,在屬性框中打開“登陸”頁,勾選“本地系統(tǒng)帳戶”下的“答應與桌面交互”項,點擊確定。重新啟動這項服務。 

2、打開目錄“C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\CONFIG”中的machine.config文件,找到“processModel”項,原來這項中有一個屬性是userName="machine",將machine改為“system”,保存文件,修改完畢。 

上述內(nèi)容就是怎么在ASP.NET中執(zhí)行windows程序,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI