在锁定的 Windows 10 计算机上的后台进程中将文本放入剪贴板

2023-11-21

我正在构建一个进程(到目前为止,我已在 .Net Framework 4.7.2 上尝试过 VBA、Python 和 C#),该进程需要将一些字符串放入 Windows 10 计算机锁定屏幕后面的剪贴板上。 为了测试,我将其减少到只有两个命令(伪代码,因为使用了 3 种语言。详细信息在问题末尾):

SleepForFiveSec(); //to provide time for locking screen
// now locking machine
SetClipboardContent();

剪贴板对解锁会话有响应,但在计算机锁定时变得不可用并返回“剪贴板锁定”错误(特定于语言)。

我已经测试了在 google/stackoverflow 中找到的几种与剪贴板相关的技术,用于提到的语言(总共大约 6 种),但到目前为止还没有任何效果。

机器在 Windows 10 Enterprise 上运行(在 3 台具有相同版本的不同机器上进行测试)。

代码示例:

C# 选择 1:

using System.Windows.Forms;
.....
[STAThread]
static void Main()
{
    System.Threading.Thread.Sleep(5000);
    Clipboard.SetText("test copy clip");

}

C# opt 2(用于检查锁定剪贴板的内容):

    [System.Runtime.InteropServices.DllImport("user32.dll")]
    static extern IntPtr GetOpenClipboardWindow();

    [System.Runtime.InteropServices.DllImport("user32.dll")]
    static extern int GetWindowText(int hwnd, StringBuilder text, int count);

    private static string getOpenClipboardWindowText()
    {
        IntPtr hwnd = GetOpenClipboardWindow();
        StringBuilder sb = new StringBuilder(501);
        GetWindowText(hwnd.ToInt32(), sb, 500);
        return sb.ToString();
    }

蟒蛇选项1:

import pyperclip
import time

time.sleep(5)
pyperclip.copy('text')

蟒蛇选项2:

import win32clipboard
import time

time.sleep(5)
win32clipboard.OpenClipboard()
win32clipboard.EmptyClipboard()
win32clipboard.SetClipboardText('text')
win32clipboard.CloseClipboard()

VBA 选项 1:

Dim clipboard As MSForms.DataObject    
Set clipboard = New MSForms.DataObject   
clipboard.SetText "text for input"
clipboard.PutInClipboard

VBA 选项 2:VBA Windows 10 问题中的文本到剪贴板


为此,您的后台进程应该在用户帐户中运行,并且应该在用户登录期间启动。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在锁定的 Windows 10 计算机上的后台进程中将文本放入剪贴板 的相关文章

随机推荐

  • 如何在真实设备上测试 Braintree + Apple Pay?

    我正在为美国境外的美国客户开发一款使用 Apple Pay 的应用程序 我正在使用 Braintree Apple Pay 我们支持真实信用卡到 Passbook 但我们无法验证它们 我成功生成了客户端令牌 self braintree并尝
  • 在 Razor VB.net MVC 中使用无法按预期工作

    我不知道为什么这个语法会抱怨错误 Enter 未声明 由于保护级别可能无法访问 并且必须输入 html 来消除该错误 该块抱怨错误 Using Html BeginForm GetUser UserProfile FormMethod Po
  • 无论设置是否正确,PHP 连接都会在大文件上传时重置

    我遇到了一个非常常见的问题 似乎找到的所有可用解决方案都不起作用 我们有一个接收大量流量的 LAMP 服务器 使用此服务器 我们执行定期文件提交上传 在小文件上传时 它工作得很好 对于大约 4 5MB 的文件 此提交上传会间歇性失败 有时有
  • 带有 PhoneGap 的 Google+ 登录按钮

    我们如何将 JS Google 登录按钮与 Phonegap 一起使用 专门针对iOS 我已经发现本文关于使用phonegap和childbrowser插件进行oauth 但是我不确定该方法是否适用于Google 登录按钮 有任何想法吗 G
  • 在 SQLAlchemy 中映射大量相似的表

    我有许多 2000 个位置的时间序列数据 每个时间序列都有数百万行 我想将它们存储在 Postgres 数据库中 我当前的方法是为每个位置时间序列建立一个表 以及一个存储每个位置信息 坐标 海拔等 的元表 我正在使用 Python SQLA
  • 使用什么转换属性进行变换?

    我不确定这是否是正确的方法 但我想旋转一个元素 而且我知道transform rotate 90deg transition property all会起作用 但我不想过渡all的转变 What transition property我应该
  • 我的应用程序的 Facebook 故事:无法生成故事

    在我的 Facebook 应用程序的 Open Graph 仪表板中 在使用标准对象创建自定义或故事后 我的故事出现错误 显示 无法生成故事 因此 在 facebookdeveloper apps myapp story openGraph
  • 当解决方案具有多个 Web 应用程序时,TFS 2010 + MSDeploy

    我有两个解决方案 SolutionA sln WebApplication1 csproj SolutionB sln WebApplication1 csproj WebApplication2 csproj 我还有两个 TFS 2010
  • 以编程方式在表变量中设置身份种子

    我需要创建一个带有标识种子的表变量 该标识种子以另一个表中字段的最大值开头 我试过这个 DECLARE IdentitySeed int SET IdentitySeed SELECT MAX HHRecId 1 FROM xxx DECL
  • 推送通知代码执行(强制退出应用程序)

    我想知道像 Whatsapp 这样的应用程序如何能够向消息的发件人提供送达收据 双绿色支票 我发现 即使您强制退出 Whatsapp 使用应用程序任务切换器并将应用程序滑开 发件人仍然会在手机收到推送通知时收到送达收据 双绿色勾号 显然 他
  • 是否可以从 JavaDoc 创建 Java 类?

    问题是 目前我的团队为一家供应商工作 该供应商为我们提供了他们库中的大量 JavaDoc 规范 但没有提供带有存根或实现的 jar 文件 我们已经与他们交谈过 但他们只会在 2 到 3 周内提供 jar 文件 我不想等到这个时候才开始我们的
  • SQL:从全名字段中解析名字、中间名和姓氏

    如何使用 SQL 从全名字段中解析名字 中间名和姓氏 我需要尝试匹配与全名不直接匹配的名称 我希望能够将全名字段分解为名字 中间名和姓氏 数据不包含任何前缀或后缀 中间名是可选的 数据格式为 First Middle Last 我对一些实用
  • 如何在项目中导入Angular Material?

    我已经安装了 Angular Material Design 现在我尝试将其添加到app module ts file import MaterialModule from angular material 我应该在部分中确定什么 impo
  • 从 websocket 监听器发出全局事件

    我想为一个项目做出贡献 它是用 Vue 编写的 而我是 Vue 的初学者 我有两个组件 Setup and MainApp 两者都需要根据来自 websocket 的不同消息来更新某些状态 有些 websocket 消息会影响前者 有些则影
  • 如何获取实际的监视器名称?如分辨率对话框中所示

    我正在尝试获取系统上监视器的友好名称 我正在使用 C 我努力了Screen 这只是给了我 DisplayXX 我也尝试过Win32 DesktopMonitor and EnumDisplayDevices 它们都给了我以下的变体 Disp
  • pycharm 和子进程 - 在控制台中有效的内容在 Pycharm 中无效

    Pycharm 的解释器似乎已经停止理解我的一些控制台命令 它不断识别默认的 shell 命令 但不识别已安装的实用程序 例如 subprocess模块理解touch命令但不理解heroku命令 有趣的是 当我使用相同的解释器 来自相同的
  • 如何获取乌龟的位置?

    如何在Python中找到乌龟的坐标 例如 如果乌龟位于 200 300 我如何检索该位置 如Python文档所示 turtle pos 以 2D 向量形式返回海龟的当前位置 x y
  • 拼写错误的 Ace 编辑器选项

    我已经为 PHP 实现了 Ace 编辑器设置 工作正常 但是当我尝试使用 Ace 的 API 设置其他选项时 我在控制台中收到警告 这是用于初始化编辑器并尝试设置选项的代码 ace require ace ext language tool
  • 按因子计算组的平均值

    有没有办法可以改进或更简单地做到这一点 means by lt function data INDEX b lt by data INDEX function d apply d 2 mean return structure t matr
  • 在锁定的 Windows 10 计算机上的后台进程中将文本放入剪贴板

    我正在构建一个进程 到目前为止 我已在 Net Framework 4 7 2 上尝试过 VBA Python 和 C 该进程需要将一些字符串放入 Windows 10 计算机锁定屏幕后面的剪贴板上 为了测试 我将其减少到只有两个命令 伪代