为什么重启机器后,我写的注册表信息就丢失了?

newhero 2003-08-26 10:09:11
CRegistry reg;
BOOL bReturn;
DWORD dw=10,dw2;
CString s;
int i=1,j;
bReturn=reg.Open ("Software\0");
bReturn= reg.CreateKey ("vckbase\0");
bReturn=reg.Open("vckbase\0");
bReturn= reg.Write ("name","hahahaha");
// bReturn=reg.Write("name","erio");
bReturn= reg.Write ("age",i);
bReturn= reg.Write ("sarary",dw);
bReturn=reg.Read ("name",&s);
reg.Close();
AfxMessageBox(s);
...全文
168 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
newhero 2003-08-26
  • 打赏
  • 举报
回复
我看的2001年4月的MSDN
newhero 2003-08-26
  • 打赏
  • 举报
回复
可能是我们看的MSDN的版本不同,我的MSDN写到
dwOptions
[in] Ignored; set to 0 to ensure compatibility with future versions of Windows CE.
就这么一点.
曾经的猎狐 2003-08-26
  • 打赏
  • 举报
回复
dwOptions
[in] Specifies special options for the key. This parameter can be one of the following values. Value Meaning
REG_OPTION_NON_VOLATILE This key is not volatile; this is the default. The information is stored in a file and is preserved when the system is restarted. The RegSaveKey function saves keys that are not volatile.
REG_OPTION_VOLATILE Windows NT/2000/XP: All keys created by the function are volatile. The information is stored in memory and is not preserved when the corresponding registry hive is unloaded. For HKEY_LOCAL_MACHINE, this occurs when the system is shut down. For registry keys loaded by the RegLoadKey function, this occurs when the corresponding RegUnloadKey is performed. The RegSaveKey function does not save volatile keys. This flag is ignored for keys that already exist.
Windows 95/98/Me: This value is ignored. If REG_OPTION_VOLATILE is specified, the RegCreateKeyEx function creates nonvolatile keys and returns ERROR_SUCCESS.

REG_OPTION_BACKUP_RESTORE Windows NT/2000/XP: If this flag is set, the function ignores the samDesired parameter and attempts to open the key with the access required to backup or restore the key. If the calling thread has the SE_BACKUP_NAME privilege enabled, the key is opened with ACCESS_SYSTEM_SECURITY and KEY_READ access. If the calling thread has the SE_RESTORE_NAME privilege enabled, the key is opened with ACCESS_SYSTEM_SECURITY and KEY_WRITE access. If both privileges are enabled, the key has the combined accesses for both privileges.


MSDN上的原封不动的给你拿来了,是你自己没有查清楚
曾经的猎狐 2003-08-26
  • 打赏
  • 举报
回复
dwOptions
[in] Specifies special options for the key. This parameter can be one of the following values. Value Meaning
REG_OPTION_NON_VOLATILE This key is not volatile; this is the default. The information is stored in a file and is preserved when the system is restarted. The RegSaveKey function saves keys that are not volatile.
REG_OPTION_VOLATILE Windows NT/2000/XP: All keys created by the function are volatile. The information is stored in memory and is not preserved when the corresponding registry hive is unloaded. For HKEY_LOCAL_MACHINE, this occurs when the system is shut down. For registry keys loaded by the RegLoadKey function, this occurs when the corresponding RegUnloadKey is performed. The RegSaveKey function does not save volatile keys. This flag is ignored for keys that already exist.
Windows 95/98/Me: This value is ignored. If REG_OPTION_VOLATILE is specified, the RegCreateKeyEx function creates nonvolatile keys and returns ERROR_SUCCESS.

REG_OPTION_BACKUP_RESTORE Windows NT/2000/XP: If this flag is set, the function ignores the samDesired parameter and attempts to open the key with the access required to backup or restore the key. If the calling thread has the SE_BACKUP_NAME privilege enabled, the key is opened with ACCESS_SYSTEM_SECURITY and KEY_READ access. If the calling thread has the SE_RESTORE_NAME privilege enabled, the key is opened with ACCESS_SYSTEM_SECURITY and KEY_WRITE access. If both privileges are enabled, the key has the combined accesses for both privileges.


MSDN上的原封不动的给你拿来了,是你自己没有查清楚
newhero 2003-08-26
  • 打赏
  • 举报
回复
非常感谢,已经成功了,打算给你100分
不过再问一个问题,我在MSDN上都没有查到用什么参数,你是怎么知道的?
bcpl 2003-08-26
  • 打赏
  • 举报
回复
说错了,REG_OPTION_VOLATILE才会重启即丢失,REG_OPTION_NON_VOLATILE为永久保存。
newhero 2003-08-26
  • 打赏
  • 举报
回复
请问bcpl(戒烟直到五颗星) 应该用什么参数呢?我在MSDN没有查到
感谢!!
bcpl 2003-08-26
  • 打赏
  • 举报
回复
如果RegCreateKeyEx用了REG_OPTION_NON_VOLATILE参数则有此现象
newhero 2003-08-26
  • 打赏
  • 举报
回复
WRITE函数如下
BOOL CRegistry::Write(LPCTSTR lpValueName, LPCTSTR lpValue)
{
ASSERT(m_hKey);
ASSERT(lpValueName);
ASSERT(lpValue);

long lReturn=RegSetValueEx(m_hKey,lpValueName,0L,REG_SZ,(const BYTE *) lpValue,strlen(lpValue)+1);

if(lReturn==ERROR_SUCCESS)
return TRUE;

return FALSE;

}
开机速度修改、宽带速度修改 加快Vista开机速度 加快Windows Vista开机速度 加快开机速度,其中减少开机滚动条的滚动次数也算是其中的一种吧。 如何减少开机滚动条的滚动次数呢?具体操作如下: 1)运行regedit进入注册表。 2)依次打开到:HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerMemory ManagementPrefetchParameters 3)右边“EnablePrefetcher”主键,把它的默认值由3改为0. 4)重新启动计算机。 怎么关闭U盘自动运行? 1、点击“开始”选择“运行”,键入“gpedit.msc”,并运行,打开“组策略”窗口; 2、在左栏的“本地计算机策略”下,打开“计算机配置_管理模板_系统”,然后在右栏的“设置”标题下, 双击“关闭自动播放”; 3、选择“设置”选项卡,勾取“已启用”复选钮,然后在“关闭自动播放”框中选择“所有驱动器”,单击 “确定”按钮,退出“组策略”窗口。 如何精简右键菜单? 1.优化大师-系统性能优化-系统个性设置-右键设置或更多设置 2.打开注册表(C:WindowsRegedit.exe),查找有关该连接名的键值删除。 .或者直接通过“开始 -> 运行 -> regedit”进入注册表,来到 “HKEY_CURRENT_USERSoftwareMicrosoftInternet ExplorerMenuExt”位置, 点击文件夹的 “+”号,删除不想要的即可。 快速查询系统信息技巧 记得你上次安装Windows Vista系统的时间么?知道你上次启动电脑的时间么?知道你的BIOS版本和Windows Vista 产品 ID么?知道你的电脑具体型号么? 知道你的Windows Vista 具体版本么?   但是你能把上面的信息一次性全部搞到手吗?   Windows Vista和老版本的Windows系统里面,都有这个功能其实,只是大家没有在意。实现的步骤,也非常的简单:   1、Win键+R键,快速打开Windows运行窗口,输入cmd回车,打开命令行窗口。   2、在命令提示符那儿输入systeminfo,回车,如图所示(图片为部分截图) 只改一个值 马上加快宽带上网速度 如果是使用宽带方式上网,那么在注册表中设定适当的TcpWindow值,就可以加快上网速度。   打开注册表编辑器,在其中 找到“HKEY_LOCAL_MACHINE\System\CurrenControlSet\Services\Tcpip\Parameters” 子键,在右边键值区中,找到或新建一个名为“GlobalmaxTcp WindowSize”的DWORD键值项,将其数据值数据设为“256960”(十进制), 关闭注册表编辑器,重新启动电脑即可。 感觉一下是不是速度比以前快多了? 这个更改的原理是:通常情况下, TCP/IP默认的数据传输单元接受缓冲区的大小为576字节,要是将这个缓冲区的大小设置得比较大的话,一旦某个TCP/IP分组数据发生错误时, 那么整个数据缓冲区中的所有分组内容,都将被丢失并且进行重新传送;显然不断地重新进行传输,会大大影响ADSL传输数据的效率。 为此,设置合适缓冲区大小,确保ADSL传输数据的效率始终很高,将会对ADSL传输速度有着直接的影响! ----取消快捷方式上的小箭头 (1)启动注册表编辑器,然后依次展开如下分支:“HKEY_CLASSES_ROOT\lnkfile”; (2)删除“lnkfile”子项中的“IsShortcut”字符串值项,因为“IsShortcut”项是用来控制是否显示普通应用程序和数据文件快捷方式中小箭头的; (3)再依次展开如下分支:“HKEY_CLASSES_ROOT \piffile”; (4)删除“piffile”子项中的“IsShortcut”字符串值项,IsShortcut值项用来控制是否显示MS_DOS程序快捷方式的小箭头; (5)退出注册表编辑器,这时快捷方式图标上的小箭头就消失不见了。 Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\lnkfile] "IsShortcut"=- 上面是去掉小箭头 Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\lnkfile] "IsShortcut"= 这个是恢复小箭头 分成2个文件,保存为*.reg就行. 重启机器才有效果。
注册表修改大全 作者:Sunny 编辑:Sunny 编辑日期:2002年12月17日 23:11分 :http://www.sunny.com/WinME : sunny@elong.com ★ 更改关闭应用程序时出现“等待”对话框的时间 有时应用程序因某种原因,会没有响应,当我们按下CTRL+ALT+DEL来结束应用程序时,系统要等一段时间才能结束任务,我们可以修改注册表来减少这段时间。 打开注册表,找到主键:“HKEY_CURRENT_USER\Control Panel\desktop”,在右侧窗口新建一“字符串值”,将其命名为“WaitToKillAppTimeOut”。双击“WaitToKillAppTimeOut,然后在“编辑字符串”对话框的“键值”框中输入5000(单位为ms,缺省值为20000ms,即20秒),为了缩短系统关闭应用的等待时间,您可以将此等待时间降低为20000ms以下,如10000ms、15000ms等。 ★ 启动时给自己个欢迎窗口 打开注册表,找到主键: “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Winlogon”,在右边窗口新建两个字符串,“LegalNoticeCaption”和“LegalNoticeText”。 “LegalNoticeCaption”是指弹出窗口的标题,修改它的值。在这里自己可以随便起个名字如“我的计算机”。 "LegalNoticeText",是指你想在登录对话框中显示的文字,如改为“祝你今天工作愉快!”这样,以后启动电脑时会自动弹出这个欢迎框。 ★ 设定口令的最小长度 通常登陆口令可以设置为空。为了安全起见,可以设定口令的最小长度,以防止口令被破解。 打开注册表编辑器,找到主键: “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Polices\ Network”键下。 在右侧窗口中新建二进制键值“MinPwdLen”,值为设定的口令的最小长度,默认值为0,表示口令可以为空。如设为“3”,则口令最小长度为3。 ★使Windows口令必须为数字和字母 设定口令为字母和数字,可以增加别人破你的口令的难度,如果口令长度足够长,则很难破解。打开注册表,找到: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Network分支,在右窗格内新建一个DWORD值为“AlphanumPwds”,修改“AlphanumPwds”键值,在出现的对话框中的“键值”框内输入1。 ★ 防止匿名用户登录 WINDOWS的本身的登陆窗口安全性很差,在不知道口令的情况下可以轻易点“取消”或按“ESC”键轻松进入。修改注册表可以防止匿名用户登陆。 打开注册表,找到主键: “HKEY_LOCAL_MACHINE\Network\Logon”,新建DWORD值,名为“MustBeValidated”,键值为“1”;再重新启动机器后,你会发现通过点击Cancel按钮进Windows的办法已经不灵了。(如果自己都进不去了,可以以安全模式进入,然后将其值改为0。) ★禁用注册表编辑器Regedit 通过修改注册表,可以控制整个机器,可以禁止修改注册表,防止别人破坏HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System,如果你发现“Policies”下面没有“System”,则在它下面新建一个主键,名字就是“"System”,然后在右侧窗口中新建一个DWORD,名字取为“DisableRegistryTools”,修改它的值为“1”,以后,别人、甚至是你都无法再用regedit.exe 啦,如果要恢复的话,用记事本建立一个REG.REG文件,保存后双击即可导入注册表 REGEDIT 4 [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System] "DisableRegistryTools"=dword:00000000 。 ★禁用口令缓存 打开注册表,找到主键: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Ne
300个注册表优化修改文件 经过了半个小时终于弄完了,希望能对大家有所帮助 如果怕弄不好注册表就先给注册表备份1下,介绍几个个手动备份的方法:} 1.win98下在DOS下scanreg/backup(备份)scanreg/regore(恢复) scanreg/fix(修复) 2.打开regedi.exe文件,然后手动导出整个注册表文件为*.reg,想恢复直接双击这个*.reg 3.在运行下进入msconfig里然后选择常规后,创建备份和还原备份K 4.不完全注册表恢复,XP和2000重起机器按F8进入,选择上1次正确配置F Office的亲密接触: 点击浏览该文件 改变Word文档日期的显示格式.reg 将Word插入对象的名称汉化.reg 设置Office的安装位置.reg 设置Word中的文件保存路径.reg 设置是否显示Office助手.reg 安全与限制 : 点击浏览该文件 从浏览清单中隐藏服务器.reg 给屏幕保护都加上密码.reg 关闭最近文件夹使用时间.reg 解除屏幕保护密码.reg 禁用打印机中的删除打印机.reg 禁用打印机中的添加打印机.reg 禁用控制面板.reg 禁用任务管理器.reg 禁用添加删除程序.reg 禁用文件夹选项菜单.reg 禁用用户追踪功能.reg 禁止打印机共享.reg 禁止对任务栏位置进行改变.reg 禁止改变打印机设置.reg 禁止更改IE的辅助功能设置.reg 禁止更改控制面板和打印机.reg 禁止光标闪烁.reg 禁止将最近访问过的共享资源添加到网上邻居里.reg 禁止密码缓存.reg 禁止使用inf文件.reg 禁止使用MS-DOS方式.reg 禁止使用拨号网络.reg 禁止使用鼠标右键.reg 禁止使用网上邻居.reg 禁止使用自动升级功能.reg 禁止添加打印机.reg 禁止系统检测网络的连接速度.reg 禁止显示前一个登录者的名字.reg 禁止向“开始”中的“文档”保留历史记录.reg 禁止修改控制面版.reg 禁止修改显示属性.reg 禁止用户调整桌面工具栏的长度.reg 禁止用户改动桌面工具栏.reg 禁止用户使用reg文件.reg 禁止远程修改注册表.reg 禁止运行任何程序.reg 禁止在网络中显示标识属性.reg 屏蔽掉添加打印机项.reg 屏蔽所有的系统热键.reg 设置密码的安全要求.reg 系统启动时禁用计划任务.reg 系统启动时运行可执行程序.reg 移去Windows XP中的共享目录.reg 增加驱动程序的识别级别.reg 找回“丢失”的运行、注销和关闭系统.reg 只允许用户使用特定的屏幕保护.reg 指定密码的最小长度.reg 个性化你的IE和OUTLOOK : 点击浏览该文件 打造个性化的IE.reg 定制IE的文字大小.reg 定制IE字体的大小.reg 改变IE的默认下载目录.reg 更改Outlook Express的标题栏.reg 解决IE首页无法更改的问题.reg 禁止IE播放视频.reg 禁止IE的代理服务器.reg 禁止IE浏览器的脚本调试程序.reg 禁止IE浏览器的升级检查.reg 禁止IE显示图片.reg 禁止IE自动安装组件.reg 禁止Outlook Express用户打开可能包含病毒的附件.reg 禁止打开或保存带病毒的Outlook邮件.reg 去掉IE内的分级审查口令.reg 让IE多线程下载.reg 设定IE的Cookies目录.reg 设置IE的Cache目录.reg 设置IE的历史目录.reg 设置IE的起始页.reg 设置IE的收藏目录.reg 设置IE发生错误时是否允许报错.reg 锁定IE的下载功能.reg 修改IE的标题栏.reg 修改IE的产品ID.reg 修改默认的E-mail地址.reg 增加IE的自动识别功能.reg 个性化你的系统 : 点击浏览该文件 不显示开始菜单中收藏夹菜单.reg 不显示上次登录的用户名.reg 打造独具特色的电脑标识.reg 调整Windows XP的浏览速度.reg 定制进入Windows前的欢迎信息.reg 改变菜单及工具提示的转换效果.reg 改变窗口变化时的动感效果.reg 改变光标的闪烁速度.reg 改变回收站的名称.reg 改变下拉菜单的对齐方式.reg 改变桌面图标的大小.reg 个性化设置计划任务.reg 给当前文件或文件夹换换颜色.reg 更改“我的公文包”的图标.reg 更改【回收站】满的时候的提示信息.reg 更改Internet Explorer的图标.reg 更改打印机图标.reg 更改登录时的背景图案.reg 更改控制面板的图标.reg 更改设备管理器中的硬件设备名称.reg 更改设备管理器中的硬件设备图标.reg 更改收件箱的图标.reg 解决Windows98第2版无法升级到Windows 2000的问题.reg 禁止使用任务栏.reg 快捷方式四个字不在了.reg 扩展鼠标右键功能.reg 密码提示语.reg 去除工具栏提示.reg 让Windows字体更平滑.reg 让点击这里开始的提示信息消失.reg 让计算机以12小时制显示时间.reg 任何地方都可以清空回收站.reg 如何设置优化页面文件.reg 如何在桌面上显示Windows版本标志.reg 删除开始菜单中的注销选项.reg 设置CD-ROM的缓存区.reg 设置关机对话框中的选项.reg 设置开始菜单使用多页面显示.reg 设置如何拖动整个窗口.reg 设置鼠标缓冲区.reg 设置图标之间的垂直间距.reg 设置文件系统的缓冲.reg 使窗口做到自动刷新.reg 使用64位真彩色.reg 文件测试.reg 修改Windows XP的版本号.reg 以高彩色分辨率显示图标.reg 隐藏桌面上的所有图标.reg 隐藏桌面上所有图标.reg 在启动计算机时运行屏幕保护程序.reg 在鼠标右键菜单中增加重新启动计算机的功能.reg 找回丢失的频道栏.reg 拯救你的任务栏.reg 自动关闭计算机.reg 自动设定显示器的刷新频率.reg 优化你的网络: 点击浏览该文件 改变下载的路径.reg 加快上网速度.reg 控制拨号网络的密码保存.reg 屏蔽整个网络.reg 启用IP过滤功能.reg 启用路由功能.reg 清理访问网络邻居后留下的字句信息.reg 取出映射网络驱动器和断开网络驱动器.reg 去除网上邻居里的邻近的计算机项.reg 设置HTTP 1.1协议的支持.reg 设置WINS服务器解析超时时间.reg 设置浏览器Cache的大小.reg 设置慢速网络连接超时时间.reg 设置网络连接的超时时间.reg 设置自动拨号功能.reg 隐藏上机用户登录的名字.reg 系统优化: 点击浏览该文件 不让CD-ROM自动运行.reg 不显示远程管理.reg 彻底关闭Dr.Warson.reg 打开或关闭启动优化功能.reg 调整Windows XP的浏览速度.reg 改进核心系统性能.reg 更改标准时间的名称.reg 关闭硬盘空间不足时发出警告.reg 关机时自动清除文件记录.reg 关机时自动删除交换文件.reg 恢复注册表禁用.reg 激活DOS的快速编辑模式.reg 计算机启动时自动运行屏幕保护程序.reg 加快程序的运行速度.reg 加快程序运行速度.reg 加快关机速度.reg 简单明了的任务管理器.reg 将mp3的音质调整到96kbps.reg 进入Windows后自动打开数字小键盘.reg 禁用长文件名中的~字符.reg 禁用关闭系统.reg 禁止访问任务栏的属性.reg 禁止改变工具栏的内容.reg 禁止删除打印机.reg 开启CPU的二级缓存.reg 控制CD-ROM的自动播放.reg 快速重启计算机.reg 扩充回收站的鼠标右键功能.reg 屏蔽资源管理器中的文件菜单.reg 启用自动优化磁盘功能.reg 取消无用的登录.reg 取消重启计算机并切换到MS-DOS功能.reg 去掉Windows XP的自动更新功能.reg 让Windows退出时不保存环境设置.reg 让程序在单独的内存空间运行.reg 让电脑跑的更快.reg 让电脑运行得更快.reg 让光标不再闪烁.reg 让系统还原占用的磁盘空间更小.reg 如何提高软驱的性能.reg 删除文档菜单中的我的文档选项.reg 设定开始菜单中文档的显示数量.reg 设定蓝屏时自启动.reg 设置DOS下的自动填充命令.reg 设置Windows的安装路径信息.reg 设置窗口的缩放控制.reg 设置禁用活动桌面.reg 设置鼠标的滚动行数.reg 设置拖动整个窗口.reg 设置显示文件的扩展名.reg 设置在我的电脑中显示打印机.reg 鼠标自动激活当前窗口.reg 缩短关闭无响应程序时的等待时间.reg 提高光驱的读能力.reg 提高历史缓冲区的个数.reg 提高软驱的性能.reg 提高显示器刷新频率.reg 停用Windows的文件高速缓存.reg 退出时不保存环境设置.reg 完全禁用系统还原.reg 消除软件显示乱码.reg 修改键盘缓冲大小.reg 修改默认CD播放器.reg 修改我的电脑的名称.reg 修正快速关机引起的问题.reg 延长Windows终止服务时间.reg 隐藏我的电脑中的驱动器.reg 隐藏资源管理器工具栏上的搜索按钮.reg 用其他方式打开我的电脑.reg 用文件管理器打开我的电脑.reg 优化硬盘驱动器.reg 在Windows下修改nVIDIA显卡的Direct3D刷新率.reg 在开始菜单中添加注销项.reg 在软驱的右键菜单中增加“清空A盘”的命令.reg 在右键菜单中添加关闭计算机命令.reg 增加鼠标缓冲区.reg 找回安装密码.reg 拯救任务栏.reg 自动终止锁死程序.reg 、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、 注册表被锁和一些常用东西被限制解锁 注册表紧急解锁 显示运行、注销、网上邻居、控制面板等 有些注册表REG文件根据你的情况而自己手动修改 有需要的就拿去吧``做人要厚道一点 下了帮顶一下

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧