INF RegisterDlls 指令
注意
可以使用 Reg2inf 工具 将现有的 INF RegisterDlls 指令 转换为 INF AddReg 指令 ,以使驱动程序包通用。
RegisterDlls 指令引用一个或多个用于指定属于 OLE 控件且需要自我注册的文件的 INF 节。
[DDInstall]
RegisterDlls=register-dll-section[,register-dll-section]...
RegisterDlls 指令引用的每个 INF 节必须具有以下条目格式:
[register-dll-section]
dirid,[subdir],filename,registration-flags[,[timeout][,argument]]
register-dll-section 可以有任意数量的条目,每个条目在单独的行上。
项
dirid
指定要注册的文件的目标目录 ID。 有关详细信息,请参阅 使用 Dirids。
subdir
指定要注册的文件的目录路径(相对于当前目录)。 如果未指定,则该文件位于当前目录中。
filename
标识要注册的 OLE 控件的文件名。
registration-flags
指示要对 OLE 控件执行的注册操作。 必须指定以下一个或两个标志。
0x00000001 (FLG_REGSVR_DLLREGISTER)
(Windows SDK 文档) 中所述,调用 OLE 控件的 DllRegisterServer 函数。
0x00000002 (FLG_REGSVR_DLLINSTALL)
(Windows SDK 文档) 中所述,调用 OLE 控件的 DllInstall 函数。
timeout
指定 OLE 控件完成指定注册调用的超时(以秒为单位)。 默认超时为 60 秒。
argument
如果控件是可执行文件,则这是传递给可执行文件的命令字符串。 默认参数为 /RegServer。
如果控件不是可执行文件,则指定要传递给 DllInstall 函数的命令行参数。
注解
每个 register-dll-section 名称对于 INF 文件必须是唯一的,并且必须遵循定义节名称的一般规则。 有关这些规则的详细信息,请参阅 INF 文件的一般语法规则。
以下规则适用于对设备安装使用 RegisterDlls 指令:
尽管 语法允许文件名为 DLL 或可执行文件,但对于设备安装,只允许 DLL。
要注册的代码不得提示用户输入。
服务器端安装在系统上下文中执行。 因此,必须非常确保所注册的代码不包含任何安全漏洞,并且文件权限可防止恶意修改代码。
有关 OLE 控件和自我注册的详细信息,请参阅 Windows SDK 文档。
示例
[Dialer]
RegisterDlls = DialerRegSvr
[DialerUninstall]
UnregisterDlls = DialerRegSvr
[DialerRegSvr]
11,,avtapi.dll, 1