Windows注册表,如何添加本机程序以执行启动?

时间:2012-04-15 18:18:43

标签: windows registry native ntdll

我已经完成了Windows的Native程序。

(我用#pragma comment(linker, "/SUBSYSTEM:NATIVE"编译))。

我想将程序添加到自动执行列表中,我该怎么办?

我的确切问题是:

1)。我如何在Windows注册表中执行此操作(我已经使用Google搜索了BootExecute / SetupExecute表,但安装程序为空,而BootExecute只有: autocheck autochk * )。所以我对空表感到困惑(因为,如果它是空的,Windows中的另一个自动执行程序,ntdll.dll确实加载了吗?)

2)。重要的是可执行程序的版本是什么: for 32/64 bits system

我已将它放在%windir%\ system32 中,但还有%windir%\ WOW64 文件夹。

我是否应该在注册表或Windows中突出显示此详细信息从两个文件夹中加载每个驱动程序,只需将它们高亮显示为taskmgr中的 * 32 或64位程序?

3)。有没有其他方法可以做到这一点?

谢谢,

最诚挚的问候!

1 个答案:

答案 0 :(得分:2)

1)您需要将其放入BootExecute注册表值。它是一个多字符串值,你需要保留已经存在的任何字符串(通常只有“autocheck autochk *”)并且只是附加你的程序名称而没有扩展名。

2)你应该为32位操作系统编译32位二进制文​​件,为64位操作系统编译64位二进制文​​件。二进制文件应放入%windir%\ system32

3)据我所知,这是唯一的方法

PS - 例如,安装具有引导碎片整理功能的任何文件系统或注册表碎片整理程序,启用它,并查看它如何修改BootExecute。