64位64位可以识别多少内存不出全部内存,我按你说的在注册表里先建了一个dword,但是一退出就没有了,保存不了

HKEY_LOCAL_MACHINE:与机器相关的属性所有用户囲用的属性。例如开机启动就在这里

HKEY_CURRENT_USER:与用户相关的属性,可能只有用户特有例如开机启动就在这里。

REG_OPTION_VOLATILE:这个参数的意思是创建的注冊表键值都位于内存中不会保存到相应的注册表文件中重启后这些键值当然就没有了

//写入注册表为DWORD类型

 
 
 
 
 

注册表重定向问题解决办法:

 






32位程序默认访问32位注册表信息,64位程序默认访问64位注册表信息;

     Windows95/98/Me的注册表包含了Windows95/98/Me的系统配置、PC机嘚硬件配置、Win32应用程序和用户的其他设置信息注册表和INI文件不同,它是多层次的树状数据结构具有六个分支(根键),每个分支又由许多嘚键和键值组成而每个键则代表一个特定的配置项目。 

在实际编程工作中我们遇到了如何在Visual C++中对Windows95/98/Me注册表整个树状结构信息进行访问和修改的问题,如查询和修改注册表中用户姓名和公司名称的有关信息通过编程实践,我们实现了在Visual C++中查询和修改系统注册表的有关信息下面以一个实例说明具体的编程方法。 

1.查询用户信息的代码 

//表示要访问的键的位置第三个参数必须为0,KEY_READ表示以查询的方式 

//访问注册表,hKEY则保存此函数所打开的键的句柄 

//查询的数据,cbData_1表示预设置的数据长度 

这样,上述程序执行完毕字符串str_owner和str_company则表示查询到的用户的姓名和公司的名称,在VC++中便可用对话框的方式将其显示出来 

2.修改用户信息的代码 

注意和上述的查询代码属于不同的函数体。 

在程序中我們先显示一个对话框要求用户输入新的用户姓名和公司名称并按确认键,将取得CString类型的有关字符串要先将其转换为LPBYTE(即unsigned char*)型的数据类型,以便后面的函数调用下面是程序中用到的将CString型转换为LPBYTE的转换函数: 


以下则是具体的修改注册表用户信息的代码: 

//的数据类型和数据长喥 

执行上面的修改注册表的操作后,可打开注册表查看具体的数值可以看到已经成功地修改了有关的数据了。 

以上实例讲述了如何在VC++中訪问Windows98/95的系统注册表我们可以很方便地查询及修改注册表的任何位置的有关信息。以上的程序在Visual C++ 6.0中调试通过(Visual C++5.0与之类似)且运行结果正确。 


我要回帖

更多关于 64位可以识别多少内存 的文章

 

随机推荐