gpt4 book ai didi

windows - 如何使用 Batch 添加 REG_NONE 空值?

转载 作者:可可西里 更新时间:2023-11-01 13:32:08 27 4
gpt4 key购买 nike

此注册表脚本在 reg 编辑器中写入一个 REG_NONE 空值(表示为二进制数据):

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\keyname]
"valuename"=hex(0):

enter image description here

(上图中数据描述的英文翻译是:“零长度二进制值”)

我需要在 Batch 中重现相同的内容(以改进 Reg2Bat 转换器),但是当我尝试这样做时:

REG ADD "HKCU\keyname" /V "valuename" /T "REG_NONE" /D "" /F

它添加数据:

enter image description here

也许 reg.exe 命令与 REG_NONE 值类型不兼容? (命令帮助说它是一个受支持的值,但是......你看)

我如何才能真正添加​​一个 REG_NONE 空值?

最佳答案

到目前为止我发现的唯一令人讨厌的选择是创建一个 .reg 文件并导入该文件:

call :regnone HKEY_CURRENT_USER "keyname" valuename

goto :eof

:regnone
rem create a reg file
echo Windows Registry Editor Version 5.00 > none.reg
echo [%~1\%~2] >> none.reg
echo "%~3"=hex(0): >> none.reg

rem import it the registry
reg import none.reg

del /q none.reg

goto :eof

REG_NONE 是一种特殊类型,由于实现细节(命令行工具针对字符串和多字符串进行了优化)只能由 RegSetValueEx 创建零长度二进制值 Windows API。更高级别的 api 类似于 WMI 提供程序上的 api 只允许 SetBinaryValue并且没有 SetNoneValue。除了 REG 之外,还有一个使用 wmic 的选项,它离 WMI 提供程序更近一点,但仍然不允许您创建 REG_NONE 类型(它确实允许您创建零长度REG_BINARY,REG 也做不到的事情)

您可以使用此命令获得的最接近的 二进制值(由 MC ND 提供)

reg add "hkcu\volatile environment" /v test /t reg_binary

是两个零字节:00 00,由两个空字符终止(未提供选项 /d )多字符串

关于windows - 如何使用 Batch 添加 REG_NONE 空值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25414510/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com