Windows系统编程 教学课件 作者 李晓黎第6章.ppt

Windows系统编程 教学课件 作者 李晓黎第6章.ppt

ID:50030252

大小:516.50 KB

页数:35页

时间:2020-03-07

Windows系统编程 教学课件 作者 李晓黎第6章.ppt_第1页
Windows系统编程 教学课件 作者 李晓黎第6章.ppt_第2页
Windows系统编程 教学课件 作者 李晓黎第6章.ppt_第3页
Windows系统编程 教学课件 作者 李晓黎第6章.ppt_第4页
Windows系统编程 教学课件 作者 李晓黎第6章.ppt_第5页
资源描述:

《Windows系统编程 教学课件 作者 李晓黎第6章.ppt》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、Windows系统编程实用教程授课教师:职务:第6章探测网络中的在线设备课程描述Windows将很多系统配置信息保存在注册表中,通过读取注册表中的一些键值,可以获取Windows的相应系统信息。比如,服务和安装程序的列表等;通过修改注册表中的一些键值,可以对Windows系统进行配置.很多应用程序也把配置信息保存在注册表中。本章知识点6.1注册表的结构和管理6.2对注册表键的操作6.3对注册表值的操作6.4注册表编程实例:安装和卸载程序管理6.1注册表的结构6.1.1注册表的结构6.1.2标准注册表值类型6.1.1注册表的结构1.HKEY_LOCAL_MA

2、CHINE(HKLM)2.HKEY_CURRENT_CONFIG(HKCC)3.HKEY_CLASSES_ROOT(HKCR)4.HKEY_USERS(HKU)5.HKEY_CURRENT_USER(HKCU)注册表编辑器在“运行”对话框中执行regedit.exe命令,可以打开“注册表编辑器”窗口,如图6.1所示。6.1.2标准注册表值类型类型编号类型名说明0REG_NONE没有类型1REG_SZ字符串类型2REG_EXPAND_SZ一个可扩展的字符串值,其中可以包含环境变量3REG_BINARY二进制类型4REG_DWORD/REG_DWORD_LIT

3、TLE_ENDIANDWORD类型,用于存储32位无符号整数,即0~4,294,967,295[232 –1]之间的整数,以little-endian格式存储5REG_DWORD_BIG_ENDIANDWORD类型,用于存储32位无符号整数,即0~4,294,967,295[232 –1]之间的整数,以big-endian格式存储6REG_LINK到其他注册表键的链接,指定根键或到目标键的路径7REG_MULTI_SZ一个多字符串值,指定一个非空字符串的排序列表8REG_RESOURCE_LIST资源列表,用于枚举即插即用硬件及其配置9REG_FULL_R

4、ESOURCE_DESCRIPTOR资源标识符,用于枚举即插即用硬件及其配置10REG_RESOURCE_REQUIREMENTS_LIST资源需求列表,用于枚举即插即用硬件及其配置11REG_QWORD/REG_QWORD_LITTLE_ENDIANQWORD类型,用于存储64位无符号整数,以little-endian格式存储或未指定存储格式6.2对注册表键的操作6.2.1打开和关闭键6.2.2创建注册表键6.2.3删除注册表键6.2.4枚举子键6.2.1打开和关闭键调用RegOpenKeyEx()函数可以打开指定的注册表键并返回其句柄,函数原型如下:L

5、ONGWINAPIRegOpenKeyEx(__inHKEYhKey,__inLPCTSTRlpSubKey,DWORDulOptions,__inREGSAMsamDesired,__outPHKEYphkResult);【例6.1】使用RegOpenKeyEx()函数判断HKEY_LOCAL_MACHINE下的子键是否存在,如图6.2所示。创建一个基于对话框的MFC项目RegKeyExists,主对话框对应的类为CRegKeyExistsDlg。在主对话框中添加编辑框控件IDC_EDIT_SUBKEY,并为其添加变量m_SubKey。CRegKeyEx

6、istsDlg::OnInitDialog()在CRegKeyExistsDlg::OnInitDialog()中为编辑框IDC_EDIT_SUBKEY设置初始值,代码如下:BOOLCRegKeyExistsDlg::OnInitDialog(){CDialog::OnInitDialog();……m_SubKey="SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall";UpdateData(0);returnTRUE;//除非将焦点设置到控件,否则返回TRUE}单击“判断”按钮对应的代码vo

7、idCRegKeyExistsDlg::OnBnClickedButtonVerify(){UpdateData(TRUE);LONGlRet;HKEYhKey;lRet=RegOpenKeyEx(HKEY_LOCAL_MACHINE,m_SubKey.GetBuffer(),0,KEY_QUERY_VALUE,&hKey);if(lRet!=ERROR_SUCCESS)AfxMessageBox("不存在");elseAfxMessageBox("存在");RegCloseKey(hKey);}6.2.2创建注册表键LONGRegCreateKeyEx(

8、HKEYhKey,//一个打开的注册表键的句柄,调用进程对该键必须

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。