1. 程式人生 > >C#使用WinExec呼叫exe程式

C#使用WinExec呼叫exe程式

實現

1、新增引用

using System.Runtime.InteropServices;//呼叫外部的DLL

2、定義win32API

//呼叫exe
[DllImport("kernel32.dll")]
public static extern int WinExec(string exeName, int operType);

//生成執行資料
private void generateExecuteData_ItemClick(object sender, ItemClickEventArgs e)
{
    WinExec(@"C:\ExecuteRecords\OrdersExecutionRecords.exe"
, 5); }

WinExec說明

1、方法的返回值。

方法成功,返回>31的整數值;
方法失敗,返回:
返回結果 說明
0 系統記憶體或資源不夠
ERROR_BAD_FORMAT 非法的exe程式
ERROR_FILE_NOT_FOUND 檔案未找到
ERROR_PATH_NOT_FOUND 路徑未找到

2、引數

方法有兩個引數:第一個引數lpCmdLine為路徑+程式、第二個引數nCmdShow為展示方式。

2.1lpCmdLine
搜尋順序:
1、引數指定路徑
2、應用所在路徑
3、當前路徑
4、system路徑(可呼叫GetSystemDirectory方法查詢)
5、window路徑(可呼叫GetWindowsDirectory方法查詢)
6、環境變數中path路徑
2.2uCmdShow

具體說明如下

引數 說明
11 最小化窗體
0 窗體隱藏
3 最大化窗體
6 最小化窗體後,啟用Z軸上的上一層窗體
9 重新初始化窗體
5 展示窗體
10
3 啟用窗體,並最大化
2 啟用窗體,並最小化
7 展示窗體,並設為最小化
8 展示窗體的大小及位置為當前大小及位置
4 展示窗體的大小及位置為最常用大小及位置
1 啟用並展示一個窗體。不管窗體為最小化或最大化狀態,系統將其恢復至原始大小及位置。當初次使用時,建議使用本值