WINDOW32转64位魔力转球教程图最好有图……

查看: 1134|回复: 15
想换Win7系统,用32位还是用64位的对电路图软件兼容性好点?
还在用XP,落后了。想升级成win7,更高级的系统暂时不考虑,不知道32位的好还是64位好?主要用仿真软件,和电路图PCB等软件,比如DXP,AD等等,那个系统更兼容点,知道的请指教,谢谢了先!
硬件可以的话,当然64了
喜牛牛 发表于
硬件可以的话,当然64了
现在起码的硬件都支持64位了,就是不知道软件的兼容性
32位还是64位,可百度下。楼主提到的软件问题,不成问题(具体可由其他坛友补充),我装的是 win7 32系统,本原来买机器时候是64位win7系统,后来我自己重装32位win7系统,后来升级到旗舰版。
xiaomu 发表于
32位还是64位,可百度下。楼主提到的软件问题,不成问题(具体可由其他坛友补充),我装的是 win7 32系统, ...
为啥重装要装32位系统呢?是不是64位有啥问题?
我原来是XP系统,后来升级装的是 win7 64位系统,过了几个月才习惯。
32位的吧,要不好多老软件在64位兼容不够好。反正我的是64的改成32的了
现在的软件基本都支持64位,上64系统内存最好是4G以上,不然你还是32位吧
64位支持4G以上内存 有条件上个SSD吧
部分32位老软件在64位系统上不能用, 这就认为64位系统有问题。
那32系统上根本不能使用64位的软件, 岂不是也可以认为32位系统更加不好用
南国屠夫 发表于
64位支持4G以上内存 有条件上个SSD吧
SSD价格还是贵,过段时间吧
其实主要看你硬件配置,4g以下的内存装64位跑不快的,整体运行不好。软件这方面只要不是很多年前的软件,不用在意系统是32还64
64从诶村方便啊
现在还用XP确实是太过于保守!
32位寻址只能达到4096兆(4G)内存,你的电脑要是大于4G的内存建议使用64位操作系统,不然即使你有再多的内存也是浪费了,但64位系统的兼容性会差一些。
微信:caoyin513 E-mail:
Powered by- 专注于Win7旗舰版系统下载!
热门搜索:
当前位置: >
教你怎么把win732位换成64位
来源:&&&&浏览量:
近来,小编在网上看到一些网友在寻求windows732位怎么换成64位的方法,所以急人之所需,小编就如何windows732位怎么换成64位,做出以下解答。一些朋友在网站上想要知道怎么把win732位换成64位,小编想向大家分享关于怎么把win732位换成64位一点小经验,有这方面问题的朋友,可以前来学习。怎么把win732位换成64位图文教程首先,准备onekey一键还原工具以及后缀为.GHO的64位镜像文件。将onekey和64位的win7.GHO镜像文件安装在C盘怎么把win732位换成64位载图1双击onekey,进行还原.怎么把win732位换成64位载图2选择路径,点击确定(注意:路径选择不能有中文和特殊字符)怎么把win732位换成64位载图3点击:是。怎么把win732位换成64位载图4系统还原中,怎么把win732位换成64位载图5重启电脑,自动安装。怎么把win732位换成64位载图6在我的电脑中,查看怎么把win732位换成64位载图7以上就是小编给大家带来的操作步骤,不知道大家掌握了没有,赶紧试试吧!
Win7系统教程排行
随着windows10操作系统的不断成熟,越来越多的win7系统用户开始使
什么是U盘安装win7系统?怎样安装win7?如何使用小白一键U盘装系统
想要系统之家重装win7纯净版系统的用户更是络绎不绝,但是如何
win7企业版64系统激活工具采用一键式激活方式,人性化设计,是激
win8与win7哪个好用,很多网友都纠结这个问题,因为windows8系统的公
联想win7旗舰版64位系统是在联想w764旗舰版原版系统基础上制作而
很多网友不知道windows7如何调屏幕亮度.其实小编告诉大家window
要怎么修复.小编就把win7 explorer修复和出现explorer.exe错误的原因
Win7系统怎么备份和还原C盘?很多菜鸟对这个问题很烦恼,接下来
网友们知道w7专业版和旗舰版的区别在哪里吗?相信有非常多的网
最新系统下载
5.01 GB | 简体中文
4 GB | 简体中文
5.0 GB | 简体中文
4.1 GB | 简体中文
3.9 GB | 简体中文
5.05 GB | 简体中文
28.4 MB | 简体中文
617 MB | 简体中文
6.0 MB | 简体中文关于32位程序在64位系统下运行中需要注意的重定向问题(有图有真相)(***) - CSDN博客
关于32位程序在64位系统下运行中需要注意的重定向问题(有图有真相)(***)
<span style="color:#x00 前言
最近学习了Stuart@ukstufus的文章《Persistence Architecture Matters》,恰巧解决了我之前遇到过的一个问题,理清了文件和注册表重定向中需要注意的细节
大家在学习的过程中难免也会碰到,所以在此分享一下。
《Persistence Architecture Matters》的链接:
<span style="color:#x01 消失的注册表键&#20540;
OS:Win8x64
开发环境:VS2008
<span style="color:#、编写程序写入注册表
代码如下:
#include &atlbase.h&
int main(int argc, char *argv[])
LPCTSTR lpSubKey = &Software\\Microsoft\\Windows\\CurrentVersion\\Run&;
DWORD dwDisposition = REG_OPENED_EXISTING_KEY;
LONG lRet = ::RegCreateKeyEx(HKEY_LOCAL_MACHINE, lpSubKey, NULL, NULL, REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS, NULL, &hKey, &dwDisposition);
if (ERROR_SUCCESS != lRet)
char szModuleName[MAX_PATH] = { 0 };
::GetModuleFileNameA(NULL, szModuleName, MAX_PATH);
lRet = ::RegSetValueEx(hKey, &test&, NULL, REG_SZ, (BYTE*)szModuleName, strlen(szModuleName) + 1);
if (ERROR_SUCCESS != lRet)
printf(&RegSetValueEx error!\n&);
printf(&[+] RegSetValueEx Success!\n&);
::RegCloseKey(hKey);
编译平台设置为Win32
以管理员权限运行后会向HKLM\Software\Microsoft\Windows\CurrentVersion\Run写入键&#20540;test
<span style="color:#、获取写入的键&#20540;
编写批处理文件来获得写入的结果
批处理内容如下:
REG query &HKLM\Software\Microsoft\Windows\CurrentVersion\Run& /v &test& &&result.txt
在本地右键直接执行批处理文件
可是,批处理执行后无法输出写入的键&#20540;
<span style="color:#x02 消失的文件
<span style="color:#、编写程序写入文件
代码如下:
#include &stdio.h&
void main()
char *temp=&test&;
fp=fopen(&c:\\windows\\system32\\test.txt&,&a+&);
fwrite(temp,strlen(temp),1,fp);
printf(&[+] Write Success!\n&);
fclose(fp);
编译平台设置为Win32
以管理员权限运行后会向c:\windows\system32\写入文件test.txt
<span style="color:#、获取写入的文件
批处理内容如下:
dir c:\windows\system32\test.txt &&result.txt
在本地右键直接执行批处理文件
同样,批处理无法输出写入的文件内容
<span style="color:#x03 原因分析
<span style="color:#、重定向
自xp系统开始,64位的系统引入了新技术:文件重定向和注册表重定向
这个技术是为了在64位系统下将32位程序和64程序分离开
在64位平台上运行32位程序的模拟器被称为WOW64
WOW64全称为&Windows 32 on Windows 64&
<span style="color:#、注册表重定向
在X64系统里面,一些特殊的注册表键会被分为2个独立的部分
(1)32位程序对注册表某些位置的操作存在重定向
比如对HKLM/Software访问,会被WOW64重定向至HKLM/Software/Wow6432Node
具体存在重定向的注册表位置可参考如下链接:
(2)64位程序对注册表的操作不存在重定向
HKLM/Software/Wow6432Node下保存的均为32位程序的注册表信息
如果在HKLM\Software\Wow6432Node\Microsoft\CurrentVersion\Run添加启动项来运行dll,系统默认会执行32位的rundll32.exe(路径为:c:\windows\SysWOW64\rundll32.exe)来加载dll,加载的dll必须是32位(如果是64位会出错)
当然,如果在HKLM\Software\Microsoft\Windows\CurrentVersion\Run添加启动项来运行dll,则默认为64位rundll32.exe,加载64位dll文件
<span style="color:#、文件重定向
同样,文件系统也存在2个独立的部分
(1)32位程序对%systemroot%/system32&的操作存在重定向
32位文件会被重定向到%systemroot%/SysWOW64
(2)64位程序对文件操作不存在重定向
%systemroot%/SysWOW64下的都为32位程序,在里面可以找到32位的cmd、calc等
基于以上的分析,整理出了如下操作注册表键&#20540;和文件系统的方法
<span style="color:#x04 找回注册表键&#20540;
解决思路:
32位程序写注册表的操作会被重定向到HKLM\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Run
而在本地执行批处理默认会调用64位的程序,不会被重定向,查询的位置为HKLM\Software\Microsoft\Windows\CurrentVersion\Run
解决方法:
<span style="color:#、修改调用的api参数,跳过重定向,使32位程序去访问64位的注册表
在调用函数RegCreateKeyEx创建注册表项时,对其第六个参数REGSAM samDesired设置中添加参数KEY_WOW64_64KEY
即KEY_ALL_ACCES改为KEY_ALL_ACCESS | KEY_WOW64_64KEY
这样就会跳过重定向,最终写入的位置为HKLM\Software\Microsoft\Windows\CurrentVersion\Run
修改后的代码如下:
#include &stdafx.h&
#include &atlbase.h&
int main(int argc, char *argv[])
LPCTSTR lpSubKey = &Software\\Microsoft\\Windows\\CurrentVersion\\Run&;
DWORD dwDisposition = REG_OPENED_EXISTING_KEY;
LONG lRet = ::RegCreateKeyEx(HKEY_LOCAL_MACHINE, lpSubKey, NULL, NULL, REG_OPTION_NON_VOLATILE,KEY_ALL_ACCESS | KEY_WOW64_64KEY, NULL, &hKey, &dwDisposition);
if (ERROR_SUCCESS != lRet)
printf(&RegCreateKeyEx error!\n&);
char szModuleName[MAX_PATH] = { 0 };
::GetModuleFileNameA(NULL, szModuleName, MAX_PATH);
lRet = ::RegSetValueEx(hKey, &test&, NULL, REG_SZ, (BYTE*)szModuleName, strlen(szModuleName) + 1);
if (ERROR_SUCCESS != lRet)
printf(&RegSetValueEx error!\n&);
printf(&[+] RegSetValueEx Success!\n&);
::RegCloseKey(hKey);
再次执行批处理
REG query &HKLM\Software\Microsoft\Windows\CurrentVersion\Run& /v &test& &&result.txt
成功获得键&#20540;
也可结合使用Wow64DisableWow64FsRedirection和Wow64RevertWow64FsRedirection关闭和开启重定向,以此来跳过重定向,写入64位的注册表
<span style="color:#、修改批处理,查询重定向后的注册表键&#20540;(验证结论用)
不修改原程序,默认让其写入HKLM\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Run
修改批处理文件查询重定向后的注册表键&#20540;,代码为:
REG query &HKLM\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Run& /v &test&
在本地右键执行后可成功获得键&#20540;
实际测试的过程中很少能够在本地右键执行批处理,所以该方法仅作验证思路
通常情况下,32位的程序执行批处理文件也会存在重定向的问题。
<span style="color:#x05 找回文件
解决思路:
同样,32位程序写入c:\windows\system32\&的操作会被重定向到c:\windows\SysWOW64\
32位程序如果需要访问真正的c:\windows\system32\,可访问c:\windows\Sysnative\
<span style="color:#、修改批处理
32位程序生成的文件实际位置为C:\Windows\SysWOW64\test.txt
所以批处理对应的内容如下:
dir C:\Windows\SysWOW64\test.txt &&result.txt
<span style="color:#、补充
(1)之前遇到过的一个问题:
在测试Security Support Provider的时候就存在这个问题:
使用32位的程序将mimikatz.dll上传至域控(Server2008x64)的c:\windows\system32\下
由于重定向的缘故mimikatz.dll实际的上传位置为C:\Windows\SysWOW64,因此导致测试失败
解决方法:
文件的复制路径改为c:\windows\Sysnative换用批处理实现复制功能,不会存在重定向问题
(2)可供测试32位和64位程序区别的小方法:
C:\Windows\SysWOW64\cmd.exe
c:\windows\system32\cmd.exe
分别执行写注册表和写文件的操作,重定向的细节显而易见
写注册表:
reg add &HKLM\Software\Microsoft\Windows\CurrentVersion\Run& /v &test&
查询注册表:
REG query &HKLM\Software\Microsoft\Windows\CurrentVersion\Run& /v &test&
REG query &HKLM\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Run& /v &test&
copy test.txt c:\windows\system32\test.txt
查找文件:
dir c:\windows\system32\test.txt
dir C:\Windows\SysWOW64\test.txt
dir C:\Windows\Sysnative\test.txt
<span style="color:#x06 小结
32位程序在64系统下执行的时候,如果有对注册表和文件的操作,重定向的细节必须考虑。
对注册表操作:
访问HKLM\Software\的实际路径为HKLM\Software\Wow6432Node\
对文件操作:
访问c:\windows\Sysnative\&的实际路径为&c:\windows\system32\
访问c:\windows\system32\&的实际路径为&c:\windows\SysWOW64\
引用Stuart@ukstufus文章中的两幅图,能够帮助大家更清晰的认识其中的细节。
感谢Stuart@ukstufus的分享。解决了我的问题,也让我有了更清楚的认识。
更多学习资料:
本文由三好学生原创并首发于乌云drops,转载请注明
本文已收录于以下专栏:
相关文章推荐
运行 32 位程序
WOW64 子系统使 32 位程序能够在基于 x64 版本的 Windows Server 2003 和 Windows XP 专业 x64 版的运行而不用修改。WOW64 子系...
操作系统从32位步入64位,对于用户来说是质的飞跃。由于CPU读取数据宽度增加1倍,速度和精度都带来了跨跃。同时,CPU的读写方式的改变,对于程序员来说,需要适应跟进。虽然,64位系统支持32位程序,...
32bit-64bit porting work注意事项
64位服务器逐步普及,各条产品线对64位升级的需求也不断加大。在本文中,主要讨论向64位平台移植现有32位代码时,应注意的一些细小问题。
背景:一个第三方组件是C++.NET &#160;32位开发的,后被C#(基于FrameWork4.0)调用并封装成组件,此二次封装的组件无法运行于64位操作系统上。
&#160; &#160; &#160; &#160; 开发环境:VS2012;
运行 32 位程序
WOW64 子系统使 32 位程序能够在基于 x64 版本的 Windows Server 2003 和 Windows XP 专业 x64 版的运行而不用修改。WOW64 子系...
折腾了几回机器,才明白x64上有x64、x86两种注册表,记录下。
17:40:19 IS2120@CSDN
32位注册表被重定向为HKEY_LOCAL_MACHINE\S...
1. 64bit操作系统的重定向机制以及目的&#160;
&#160; &#160;在64bit操作系统中,为了无缝兼容32bit程序的运行,64bit的Windows操作系统采用重定向机制。目的是为了能让32bit程序在 64...
从32位到64位,根本性的区别在于两种数据类型发生了变化:long和pointer。在32位环境下,顾名思义,两者长度都是32位,也就是4个字节;而在64位环境下,都是8个字节。所以,当你把p...
问题由来交叉编译是嵌入式开发非常重要的(应该说是必须的)一个环节,但是最近在实体Linux机器上使用交叉编译工具却经常遇到一个问题:交叉编译工具版本正确,安装步骤正确,环境变量设置也正确,但是在运行a...
应对32位程序在64位系统上访问注册表和文件自动转向问题
他的最新文章
讲师:宋宝华
讲师:何宇健
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)

我要回帖

更多关于 斜转魔方公式图解图片 的文章

 

随机推荐