200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > C#使用WinAPI中 WinExec 调用外部exe程序

C#使用WinAPI中 WinExec 调用外部exe程序

时间:2023-06-13 09:06:04

相关推荐

C#使用WinAPI中 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的整数值;

方法失败,返回:

2、参数

方法有两个参数:第一个参数lpCmdLine为路径+程序、第二个参数nCmdShow为展示方式。

2.1lpCmdLine

搜索顺序:

1、参数指定路径

2、应用所在路径

3、当前路径

4、system路径(可调用GetSystemDirectory方法查询)

5、window路径(可调用GetWindowsDirectory方法查询)

6、环境变量中path路径

2.2uCmdShow

具体说明如下

是一个方法,但是我测试的是打开最大化的第三方exe程序时,想让第三方程序隐藏,用了所有的参数测试,不成功,问题猜测应该是第三方程序的框架最大化时框架有特定的设计,如前端显示、最上层等。

最终测试成功主要是因为延时问题,当你打开第三方程序后,不能立即去隐藏,需要电脑能够有时间获取到第三方程序的Handle时才能去隐藏。否则一直不成功!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。