C#启动外部exe程序后,触发外部程序的按钮控件

LaiLai_Fido 2018-09-13 11:03:41
最近有个项目要做,准备用C#来调用客户给的外部exe程序。
但是客户的这个程序是实验室使用,也就是需要人为操作的:需要用鼠标点击这个exe程序界面的Start按钮才开始执行。
我这边需要做的是调用这个程序,然后自动点击这个Start按钮。类似于自动操作。

请问有没有办法做的?
...全文
1472 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
橘子皮... 2018-10-04
  • 打赏
  • 举报
回复
NET里可以用的句柄操作模块就没有什么有名的么?py里一堆,net里的没听过。。。。
吉普赛的歌 2018-10-04
  • 打赏
  • 举报
回复
引用 11 楼 u011099165 的回复:
谢谢各位,已经找到办法解决了。
打开Exe程序后,将该程序作为当前工作窗口。由于Start按钮设置了虚拟键盘来启动,所以当前程序只要发送键盘上的按键即可。

思路不错
LaiLai_Fido 2018-10-04
  • 打赏
  • 举报
回复
谢谢各位,已经找到办法解决了。 打开Exe程序后,将该程序作为当前工作窗口。由于Start按钮设置了虚拟键盘来启动,所以当前程序只要发送键盘上的按键即可。
whoisliang 2018-09-21
  • 打赏
  • 举报
回复
找到窗口句柄之后,再enum子窗口,一直要找到你要找的这个按钮,然后再发消息给它。我曾经做过这样的项目。
0 1看天下 2018-09-21
  • 打赏
  • 举报
回复
start按钮 做成action操作 启动exe 通信发消息 执行此action
cyg17173 2018-09-20
  • 打赏
  • 举报
回复
超纲了,去游戏外挂论坛问比较合适。 这个时候人家一般会说不用C#,用中文编程的×语言比较合适。 程序的进程之间都有保护域的,要通过消息钩子处理。
龍月 2018-09-20
  • 打赏
  • 举报
回复
键盘精灵了解下
苏克贝塔03 2018-09-17
  • 打赏
  • 举报
回复
引用 1 楼 lengyeshuang 的回复:
用API,先获得窗口句柄,然后发送消息命令。

类似于vs2010自带的Spy工具
enaking 2018-09-17
  • 打赏
  • 举报
回复
先用2楼的方法,然后用API,先获得窗口句柄,然后发送消息命令。
threenewbee 2018-09-17
  • 打赏
  • 举报
回复
https://www.jb51.net/article/69793.htm
大然然 2018-09-17
  • 打赏
  • 举报
回复
引用 2 楼 carolwhy 的回复:
private static System.Diagnostics.Process p;
if (p == null)
{
p = new System.Diagnostics.Process();
p.StartInfo.FileName = "XXX.exe";
p.Start();

}
else
{
if (p.HasExited) //是否正在运行
{
p.Start();
}
}
p.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal;


问的是怎么点击exe里的某个按钮
6lilu9 2018-09-14
  • 打赏
  • 举报
回复
用API,先获得窗口句柄,然后发送消息命令。
Carolwhy 2018-09-14
  • 打赏
  • 举报
回复
private static System.Diagnostics.Process p;
if (p == null)
{
p = new System.Diagnostics.Process();
p.StartInfo.FileName = "XXX.exe";
p.Start();

}
else
{
if (p.HasExited) //是否正在运行
{
p.Start();
}
}
p.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal;

111,126

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧