【问题标题】:Programmatically trigger a copy or paste in c#以编程方式触发 c# 中的复制或粘贴
【发布时间】:2010-03-22 10:07:13
【问题描述】:

我正在开发一个注册全局热键的程序

我想使用该功能触发将突出显示的文本或数据复制到剪贴板,然后从剪贴板读取到我程序中的变量

我稍后将使用它反向粘贴它。

(示例 ctrl+1 复制到 quque #1 并且 alt+1 超过 quque 1 中的内容)

非常感谢。

【问题讨论】:

    标签: c# .net copy-paste


    【解决方案1】:

    你是说……像这样?

    Clipboard.SetText("whatever");
    

    ...或者您是在谈论从另一个应用程序中的任意窗口复制文本?后者一点也不小。

    【讨论】:

    • 1) 是的,我说的是从全局剪贴板中获取文本 2) 我认为很难在其他程序(IE Firefox 记事本字等)上看到突出显示的文本,但它不会很难向操作系统发送“复制事件”并让它为我完成所有艰苦的工作
    【解决方案2】:
    SendKeys.Send("^c");
    

    【讨论】:

    • 链接或引用包含在什么库中会很好。
    【解决方案3】:

    好吧,您可以使用 SendMessage 甚至更好的 SendInput Win32 API 进行 P/Invoke。这应该足以让您模拟几乎任何击键。

    詹姆斯

    【讨论】:

    • 您有示例链接吗?
    猜你喜欢
    • 1970-01-01
    • 2019-05-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-16
    • 1970-01-01
    • 2011-02-22
    相关资源
    最近更新 更多