Windows右键菜单可添加“复制文件内容”选项:通过注册表脚本或手动配置,调用PowerShell自动识别编码读取文本并复制到剪贴板,支持.txt等纯文本文件,需启用.NET Framework Windows Forms组件。

Windows系统右键菜单默认不提供“复制文件内容”选项,但你经常需要快速读取并复制文本文件(如.txt、.log、.csv)里的全部文字,又不想双击打开再全选复制——这时就得手动添加一个真正能执行“读取并复制内容”的右键菜单项。
用PowerShell脚本实现一键复制文件内容
这方法不依赖第三方工具,直接调用系统内置PowerShell,安全可靠,且对UTF-8、ANSI、带BOM的文本文件均能自动识别编码。
第一步:新建一个文本文档,粘贴以下完整代码:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT*shellCopyFileContent]
@="复制文件内容"
"Icon"="powershell.exe"
[HKEY_CLASSES_ROOT*shellCopyFileContentcommand]
@="powershell -NoProfile -ExecutionPolicy Bypass -Command \"$content = Get-Content '%1' -Raw -ErrorAction SilentlyContinue; if ($content) { [System.Windows.Forms.Clipboard]::SetText($content) }\""
第二步:将该文件另存为CopyFileContent.reg(注意后缀必须是.reg,不是.txt);保存时在“另存为”窗口底部把“保存类型”下拉菜单改为所有文件,否则会变成CopyFileContent.reg.txt。
第三步:双击运行该.reg文件 → 点击“是”→ 点击“确定”。
【关键前提】必须已启用.NET Framework 3.5或4.8+中的Windows Forms组件,否则Clipboard::SetText会静默失败——Win10/11默认已启用,但精简版或LTSC系统可能未安装,需手动启用(控制面板→程序→启用或关闭Windows功能→勾选“.NET Framework 3.5(包括.NET 2.0和3.0)”或“.NET Framework 4.8 Advanced Services”)。
仅对纯文本文件生效的轻量注册表方案
如果你只希望.txt、.log、.md等明确类型的文件显示该选项,避免误触发二进制文件,就用这个精准控制的方法。
让 Windows 桌面程序在开机时静默自启并隐藏到系统托盘。特别适用于 Flutter、Electron 等无视 VBS/ProcessStartInfo 窗口样式、难以隐藏的顽固应用。提供「VBS 启动器 + Python ctypes/Win32 API」的隐藏窗口方案,可稳定把窗口收进托盘且不闪控制台。
方法一:按文件扩展名逐个添加
打开注册表编辑器(Win+R → 输入regedit → 回车)→ 定位到HKEY_CLASSES_ROOT.txtshell → 右键新建项,命名为CopyContent → 在右侧双击“(默认)” → 输入字符串值:复制文本内容 → 返回上一级,右键CopyContent → 新建项 → 命名为command → 双击右侧“(默认)” → 输入:powershell -c "Get-Content '%1' -Raw | Set-Clipboard"。
方法二:复用系统已有的文本文件类标识
直接跳转到HKEY_CLASSES_ROOT xtfileshell(这是所有关联为“文本文档”的扩展名共用的父键),后续操作同方法一,只需做一次就能覆盖.txt、.log、.csv、.ini等所有被系统识别为纯文本的格式。
注意:此方法不会出现在图片、PDF、EXE等非文本文件上,天然规避乱码或崩溃风险。
验证与使用
右键任意支持的文本文件 → 查看菜单末尾是否出现“复制文件内容”或“复制文本内容” → 点击一次 → 打开记事本或微信对话框,按Ctrl+V即可粘贴全文。
若点击后无反应,请检查:① 文件是否为空;② 文件是否被其他程序独占锁定(如正在被Notepad++以只读方式打开);③ 是否使用了中文路径且含特殊符号(建议先测试桌面下的英文名.txt文件)。
完成验证后关闭注册表编辑器。

















