C#应用程序控制另一个应用程序

时间:2014-01-16 06:43:20

标签: c# winforms sendmessage

当我尝试使用自己的C#应用​​程序控制另一个Windows应用程序时出现问题。

要求是这样的。 “另一个应用程序”是我们公司购买的商业软件。我们想要开发一个应用程序来填充文本框并模拟鼠标点击。所有文本输入都来自某个XML文件。

我尝试使用SendMessage和SendWait函数调用来处理此类函数。问题是在某些情况下或在某些最终用户的笔记本电脑上,文本填写不正确。同时,在某些其他情况下,鼠标点击将失败。

我对原因的想象是调用SendMessage的同步问题。但我不知道如何解决它。有什么建议或解决方案吗?

期待你的回复。

1 个答案:

答案 0 :(得分:0)

SendMessage和SendWait将始终存在这些问题(尤其是app-to-app),例如:用户在恰当/错误的时间点击屏幕上的某个人。真的,我知道可靠地做到这一点的唯一方法是通过钩住鼠标/键盘并完全控制......这很难和痛苦。

注意:市场上有很多专业的宏观软件包(伪造键盘输入,鼠标移动,点击等)。有些人使用自己的编程语言非常复杂,可能会做你想要的。谷歌“Windows宏观软件”,你会发现堆 - 我建议你研究,试用几个包,直到找到你想要的,然后购买。