下列简要介绍关于程序自启动的几个操作注册表常用API函数:
//打开注册表 LONG WINAPI RegCreateKeyEx( __in HKEY hKey, //一般是四个根目录之一 __in LPCTSTR lpSubKey,//hKey以下的子键 __reserved DWORD Reserved,//保留必须为0 __in_opt LPTSTR lpClass, //一般为0 __in DWORD dwOptions,//创建子项时候的选项 __in REGSAM samDesired, //打开方式 __in_opt LPSECURITY_ATTRIBUTES lpSecurityAttributes,//继承性 NULL __out PHKEY phkResult,//打开子键后返回的句柄 __out_opt LPDWORD lpdwDisposition//打开指定子键不存在时候的处理 ); //写入打开子键的值 LONG WINAPI RegSetValueEx( __in HKEY hKey, __in_opt LPCTSTR lpValueName, __reserved DWORD Reserved, __in DWORD dwType, __in_opt const BYTE* lpData, __in DWORD cbData ); //删除打开子键的值 LONG WINAPI RegDeleteValue( __in HKEY hKey, __in_opt LPCTSTR lpValueName ); //删除打开指定子键 LONG WINAPI RegDeleteKey( __in HKEY hKey, __in LPCTSTR lpSubKey );
以下着重说明RegCreateKeyEx的几个重要参数:
__in HKEY hKey 指定给父键句柄或者根目录 :
__in LPCTSTR lpSubKey hKey的子键目录
__in DWORD dwOptions 创建子键时候的选项:
可以是:
REG_OPTION_VOLATILE 对子键值的设置只保留在内存,不写入文件
REG_OPTION_NON_VOLATILE 保留到文件,系统重启时值被保留
__in REGSAM samDesired 打开子键的方式,类似打开文件后的属性可读可写入,可以是以下:
KEY_ALL_ACCESS 允许所有存储
KEY_CREATE_LINK 允许建立符合列表
KEY_CREATE_SUB_KEY 允许创建上一层子键
KEY_ENUMERATE_SUB_KEYS 允许创建下一次子键
KEY_EXECUTE 可读
KEY_NOTIFY
KEY_QUERY_VALUE 可查询
KEY_READ 可读
KEY_SET_VALUE 可设置值
KEY_WRITE 可写
以下是一个设置开机自启动的程序
更多内容请看我的新博客:Windows 注册表操作简介
请大家原谅我的宣传方式吧,一直喜欢自己有个个人博客,但个人博客坏处就是少人能交流问题,欢迎大家加我好友什么的,谢谢。