public static extern void keybd_event(
byte bVk, //虚拟键值
byte bScan,// 一般为0
int dwFlags, //这里是整数类型 0 为按下,2为释放
int dwExtraInfo //这里是整数类型 一般情况下设成为 0
);
const uint KEYEVENTF_KEYUP = 0x2;void tm1_Click(object sender, EventArgs e)
{
try
{
timer1.Start();
ToolStripMenuItem tm = (ToolStripMenuItem)sender;
Clipboard.SetDataObject(tm.Text);
SetActiveWindow(t);
SetForegroundWindow(t);
//SendKeys.Send("^V");
keybd_event((byte)Keys.LControlKey, 0, 0, 0);//按下
keybd_event((byte)Keys.V, 0, 0, 0);
keybd_event((byte)Keys.LControlKey, 0, 0x2, 0);//松开
keybd_event((byte)Keys.V, 0, 0x2, 0);
if (checkBox1.Checked == true)
{
keybd_event((byte)Keys.RControlKey, 0, 0, 0);//按下
keybd_event((byte)Keys.Enter, 0, 0, 0);
keybd_event((byte)Keys.RControlKey, 0, 0x2, 0);//松开
keybd_event((byte)Keys.Enter, 0, 0x2, 0);
}
}
catch (Exception)
{
}
byte bVk, //虚拟键值
byte bScan,// 一般为0
int dwFlags, //这里是整数类型 0 为按下,2为释放
int dwExtraInfo //这里是整数类型 一般情况下设成为 0
);
const uint KEYEVENTF_KEYUP = 0x2;void tm1_Click(object sender, EventArgs e)
{
try
{
timer1.Start();
ToolStripMenuItem tm = (ToolStripMenuItem)sender;
Clipboard.SetDataObject(tm.Text);
SetActiveWindow(t);
SetForegroundWindow(t);
//SendKeys.Send("^V");
keybd_event((byte)Keys.LControlKey, 0, 0, 0);//按下
keybd_event((byte)Keys.V, 0, 0, 0);
keybd_event((byte)Keys.LControlKey, 0, 0x2, 0);//松开
keybd_event((byte)Keys.V, 0, 0x2, 0);
if (checkBox1.Checked == true)
{
keybd_event((byte)Keys.RControlKey, 0, 0, 0);//按下
keybd_event((byte)Keys.Enter, 0, 0, 0);
keybd_event((byte)Keys.RControlKey, 0, 0x2, 0);//松开
keybd_event((byte)Keys.Enter, 0, 0x2, 0);
}
}
catch (Exception)
{
}
keybd_event((byte)Keys.RControlKey, 0, 0, 0);//按下
keybd_event((byte)Keys.Enter, 0, 0, 0);
keybd_event((byte)Keys.RControlKey, 0, 0x2, 0);//松开
keybd_event((byte)Keys.Enter, 0, 0x2, 0);应该写成
keybd_event((byte)Keys.RControlKey, 0, 0, 0);//按下
keybd_event((byte)Keys.Enter, 0, 0, 0);
keybd_event((byte)Keys.Enter, 0, 0x2, 0);
keybd_event((byte)Keys.RControlKey, 0, 0x2, 0);//松开前面的V 也改这样 因为V不是
按这个写了,还是不行,Ctrl+Enter动作只有Enter出现了,Ctrl没有执行,这个按下后不自动弹起