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
具体说明如下

参数 说明
0 窗体隐藏
1 激活并展示一个窗体。不管窗体为最小化或最大化状态,系统将其恢复至原始大小及位置。当初次使用时,建议使用本值
2 激活窗体,并最小化
3 最大化窗体
3 激活窗体,并最大化
4 展示窗体的大小及位置为最常用大小及位置
5 展示窗体
6 最小化窗体后,激活Z轴上的上一层窗体
7 展示窗体,并设为最小化
8 展示窗体的大小及位置为当前大小及位置
9 重新初始化窗体
10  
11 最小化窗体

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

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

C#使用WinAPI中 WinExec 调用外部exe程序相关推荐

  1. CDR插件开发之CPG插件018 - 在CPG插件中调用外部EXE程序并传递参数

    在上篇文章中,讲解了CPG插件在VS2019中实现调试的具体方法.本文以具体代码为例,讲解在CPG插件中调用外部EXE程序,并传递运行参数的方法. 工程搭建准备 按照惯例,本篇文章的序号为018,请直 ...

  2. .NET 调用外部exe程序,出现已停止工作

    趁热打铁,赶紧记录下来. 本身调用,使用Process.Start("XX.exe");  基本上是没问题的,但是有些需要读取配置文件的exe程序(目前将出现停止工作的原因归为这个 ...

  3. C++打开网页,发起QQ对话,调用外部exe程序

    本文介绍了C++如何打开网页,发起QQ对话. 用默认浏览器打开一个网页 ShellExecute(NULL, _T("open"), _T("http://my.csdn ...

  4. Python调用外部EXE程序遍历窗体及控件并获取控件信息。

    背景 我的工作中经常手工运行一个windows程序(密码生成工具),获取该程序的计算结果,手工填到登录表单的中.该程序非常久远,已无人维护.根据凡是重复2次以上的工作都应该自动化原则,那么我来写个自动 ...

  5. C# 调用外部exe程序,出现已停止工作

    1.在一个项目中,一个Library 调用另外一个Library的可执行文件时,如果用Process.Start(exe文件)(如果该exe文件没有相关的配置文件,则可以执行成功),但是如果有相关的配 ...

  6. CAD二次开发--系统找不到指定的文件/应用程序不支持实时(JIT)调试解决办法【即:C#调用外部exe文件在CAD内部执行失败处理办法】

    我们知道一个大型的程序系统很多功能之间是相互独立的,因此对于一个exe可执行文件我们可以直接进行调用,丰富我们程序中的功能!但是今天在测试的时候发现,原本调试时候可以调用的exe文件,在打包后竟提示错 ...

  7. C#中调用外部exe的使用、调用powershell、退出进程、委托和事件

    针对几种情况,简单总结学习一下 竟然找到一个超级简单的方法调用exe文件 代码就一句,并且调用的效果特别好.加上后面的.WaitForExit()就是为了等调用的程序运行完后再执行下面的代码,没有后面 ...

  8. [实用工具]Unity调用外部EXE或Shell命令

    版权所有,转载须注明出处! 喜欢火影.喜欢Java.喜欢unity3D.喜欢游戏开发的都可以加入 木叶村Q群:379076227 1.开门见山的需求 有的时候,我们想把一些外部命令集成到 unity ...

  9. JS中调用本地exe程序

    场景 在网页中通过js调用Windows上本地的exe程序, 比如在浏览器中点击调用某播放器的exe程序. url protocol 的方式来实现.用这种方式实现,任何浏览器都兼容, 不会存在只有IE ...

最新文章

  1. 软件测试响应时间原则,对于性能测试结果的分析原则
  2. FL计算机软件,FL Studio12水果音乐制作软件
  3. 利用graphviz模块展示斐波那契数列的递归函数调用图(Python)
  4. Elasticsearch 教程--入门
  5. 云原生时代,Java还是Go?
  6. 复旦 哈工大计算机学院,国内高校中哈工大和上交复旦在一个档次吗?从这些方面看你就知道...
  7. c++容器共性机制研究
  8. ICPC 南昌现场赛 K:Tree(dsu on tree + 动态开点线段树)
  9. 计算机应用基础教程作业脑图 车辆工程学院 冯大昕
  10. js获取checkbox值的方法
  11. python十个评委打分_八个评委打分,通过筛选确定最佳评委和最差评委。
  12. The word is not correctly spelled问题
  13. react中的虚拟DOM
  14. 华为第1书:《华为交换机学习指南》全面预售中
  15. SIM900A短信操作
  16. 千兆网线水晶头的接法
  17. 【Android 进阶】开发APP常见的错误
  18. WUSTOJ 1318: 区间的连通性(Java)
  19. ARM GICv3 GIC代码分析
  20. Swin Transformer:层次化视觉Transformer

热门文章

  1. 开启Mac自带apache和PHP开发环境
  2. SRC混子的漏洞挖掘之道
  3. 2022-7-8 Leetcode 59.螺旋矩阵 II
  4. 微信小程序 云开发 订阅消息 获取下发权限失败 errCode: 20001
  5. 学习Linux命令(48)
  6. 新闻源平台:让客户心动是招商软文取得成功的关键
  7. 终圆梦于北科,忆坎坷的考研路
  8. leetcode系列-53.最大子数组和
  9. 使用Android-sdk自带的工具查看布局
  10. win11笔记本外接显示器仅第二屏幕时桌面图标会乱的解决方法