如何在C#中使用SendMessage模拟Ctrl+C和Ctrl+V事件?谢谢!

HaulZhu 2004-07-08 12:05:21
如何在C#中使用SendMessage模拟Ctrl+C和Ctrl+V事件?谢谢!
如题,请高手赐教。
...全文
1261 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
gdipkf1986 2005-04-21
  • 打赏
  • 举报
回复
感觉用keybd_event
lizh383 2004-07-09
  • 打赏
  • 举报
回复
up
HaulZhu 2004-07-09
  • 打赏
  • 举报
回复
我想在剪切板中存放自己的数据对象,如果实现法?
HaulZhu 2004-07-08
  • 打赏
  • 举报
回复
自顶
Oceanson 2004-07-08
  • 打赏
  • 举报
回复
csxtu 2004-07-08
  • 打赏
  • 举报
回复
http://www.syncfusion.com/FAQ/WinForms/FAQ_c46c.asp#q860q

7.4:How can I simulate keyboard input in my application?

This can be done through the SendKeys class in the System.Windows.Forms namespace. Check it out in the MS help documentation

xinshaw 2004-07-08
  • 打赏
  • 举报
回复
操作剪切板就可以了啊
csxtu 2004-07-08
  • 打赏
  • 举报
回复
ms-help://MS.NETFrameworkSDKv1.1.CHS/cpref/html/frlrfsystemwindowsformssendkeysclasssendtopic.htm
若要指定在按一些键时应同时按住 SHIFT、CTRL 和 ALT 键的任意组合,请将这些键的代码放在括号内。例如,若要指定按 E 和 C 时同时按住 SHIFT 键,请使用“+(EC)”。若要指定按 E 时应按住 SHIFT,之后按 C 时不按住 SHIFT,请使用“+EC”。

要指定重复的键,请使用 {键数字} 的形式。键和数字之间必须放一空格。例如,{LEFT 42} 表示按左箭头键 42 次;{h 10} 表示按 H 10 次。

lxcc 2004-07-08
  • 打赏
  • 举报
回复
假如是为了复制和粘贴那么.net里面有
Clipboard.GetDataObject 方法
Clipboard.SetDataObject 方法

来作复制和粘贴
sgc8228 2004-07-08
  • 打赏
  • 举报
回复
试下这样:先取得ctrl,c,v三个键的消息id,比如说510-521这一段就是属于鼠标的,这你可以装一个消息过滤器取得.
得到之后就好办了

Private Declare Function SendMessage Lib "user32" _
Alias "SendMessageA" (ByValhWnd As Long, _
ByValwMsg As Long, ByValwParam As Long, lParam As Any) As Long
这里是VB中的
HaulZhu 2004-07-08
  • 打赏
  • 举报
回复
我是需要模拟一个CTRL+C或CTRL+V,也就是说其它没按键。
请高手指点。
csxtu 2004-07-08
  • 打赏
  • 举报
回复
How can I tell if an ALT, Shift or CTL key is pressed without catching an event?

Use the static property Control.ModifierKeys.


if( (Control.ModifierKeys & Keys.Shift) != 0)

{

if( (Control.ModifierKeys & Keys.Alt) != 0)

{
if( (Control.ModifierKeys & Keys.Control) != 0)

{
//To do something
}
}
}
Flynxea 2004-07-08
  • 打赏
  • 举报
回复
帮忙顶

110,536

社区成员

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

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

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