日期:2014-05-18  浏览次数:20759 次

C# 操作计算器
使用SendMessage 或者 PostMessage 操作计算器 完成这个表达示 5+9=14 


SendMessage 移动鼠标和单击! 不要用什么SetXXXXpos 和MouseEvent等等!

------解决方案--------------------
你用spy++看看句柄,或看看他的类别,然后通过类别可以用enumwindow枚举窗体,找到他,然后sendemssage发送字符,将你的表达式拆开单个字符发送
------解决方案--------------------
计算器,接收数字键,不需要移动鼠标。
------解决方案--------------------
SendMessage没有移动鼠标的功能。只能发送wm_lbuttondown的时候通过wparam传递一个鼠标坐标。
------解决方案--------------------
我觉得直接发送键盘消息更方便,但特殊功能键似乎没快捷键,所以访问不到。
------解决方案--------------------
探讨

我觉得直接发送键盘消息更方便,但特殊功能键似乎没快捷键,所以访问不到。

------解决方案--------------------
C# code

//   按下   
  SendMessage(Handle,   WM_LBUTTONDOWN,   MK_LBUTTON,   MAKELONG(32,   32));   
  //   抬起   
  SendMessage(Handle,   WM_LBUTTONUP,   MK_LBUTTON,   MAKELONG(32,   32));

------解决方案--------------------
using System.Diagnostics;
Process.Start("记事本或计算器的路径"); 

调用电脑自带的
------解决方案--------------------
你这个50、69数值怎么固定了?这里应该是屏幕坐标吧,而不是计算器窗口的相对坐标,根据你计算器位置的不同,这个坐标也会改变。