怎么向一个C#程序发送标准的windows消息,UP有分

nizhigang2000 2004-05-14 03:32:47
我现在想要向一个只有程序而没有源码的C#应用程序发送消息,来控制该应用程序,比如关闭,或者,触发一个C#应用程序的事件,如点一个按键,要应该这样的一个程序,我该怎么何
...全文
128 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
ChinaKable 2004-06-07
  • 打赏
  • 举报
回复
学习
1979xt 2004-05-14
  • 打赏
  • 举报
回复
要关闭的话不用调用API这麻烦,用.net里的process类就行了。
lxcc 2004-05-14
  • 打赏
  • 举报
回复
可能.net里面没有相应的消息
nizhigang2000 2004-05-14
  • 打赏
  • 举报
回复
不好意思,WM_CLOSE消息可以收到,也执行正确了,
只是CB_SETCURSEL消息还是没有办法收到,怎么办
nizhigang2000 2004-05-14
  • 打赏
  • 举报
回复
向一个textbox1,发送WM_SETTEXT消息可以达到目的,只是还有不少的消息没有反映如,CB_SETCURSEL等,这个是没有反应的,
急呀,在线等待,盼高手来指点一二,
nizhigang2000 2004-05-14
  • 打赏
  • 举报
回复
PostMessage ( hWnd , WM_LBUTTONDBLCLK ,MK_LBUTTON, 0 );
postMessage ( hWnd , WM_LBUTTONUP , MK_LBUTTON, 0 );
我向C#程序中的一个按键发这两个消息是可以达到目标,
但是WM_CLOSE消息或者WM_QUIT消息都没有反映,
lxcc 2004-05-14
  • 打赏
  • 举报
回复
以上VB6的代码
lxcc 2004-05-14
  • 打赏
  • 举报
回复
如果只是关闭,只需要findwindow即可,然后postmessage,发送WM_QUIT消息
以下是关闭IE的小程序
Option Explicit
Private Const WM_QUIT = &H12
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long

Private Sub Command1_Click()
Dim Handle As Long
Handle = FindWindow("IEFrame", vbNullString)
If Handle <> 0 Then
PostMessage Handle, WM_CLOSE, 0, 0
End If
End Sub
BearRui 2004-05-14
  • 打赏
  • 举报
回复
点一个按键:

可以通过SendMessage发送WM_COMMAND 消息
linaren 2004-05-14
  • 打赏
  • 举报
回复
要关闭此程序很容易的,但要执行其中的功能要看这个程序是否提供了能接受命令的功能
如果有,就很简单了,传入参数就行了
lxcc 2004-05-14
  • 打赏
  • 举报
回复
用vb吧!c#用api太麻烦!
先用findwindow找到句柄,用Caption或者用VC6(安装个VS6就全有了)里面的Spy++查查窗体的ClassName
然后用findwindowex找到指定控件的classname或者caption找到控件的句柄,然后用postmessage发消息给该控件
chenhenet 2004-05-14
  • 打赏
  • 举报
回复
我没有做过,不过我可以提示一下,看对你有没有帮助:
不论vb还是vc,都可以通过shell执行本机内的应用程序,同样可关闭本机内的应用程序,是否可先通过这种方式获得应用程序的句柄,然后发送消息~~
^_^,只是猜想,各位看了别见笑。
楼主如果解决了也别忘告诉我们一声~
raid79 2004-05-14
  • 打赏
  • 举报
回复
关注
vzxq 2004-05-14
  • 打赏
  • 举报
回复
学习,帮你UP
来高手
jackie615 2004-05-14
  • 打赏
  • 举报
回复
没有源码你怎么知道那个键是什么 :-(

110,536

社区成员

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

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

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