System32、SysWOW64与SysNative文件夹

在64位Windows系统中,32位应用试图访问System32文件夹会被重定向到SysWOW64。为了解决这个问题,32位应用可以使用Sysnative这个特殊路径来访问真正的System32。这篇博客解释了这种兼容性的实现和背后的原因。
摘要由CSDN通过智能技术生成
**直接在32位应用中访问System32文件夹会被重定向到SysWOW64文件夹去,如果这个32位应用想要访问真实的System32文件夹就需要使用Sysnative。**

比如,想在32位应用中访问到64位的C:\Windows\System32\winevt\Logs\Security.evtx ,那我实质上在代码里面要写的应该是:C:\Windows\Sysnative\winevt\Logs\Security.evtx

在广泛使用X86架构的CPU时代,用的系统、应用都是32位的(可能32位还算高的),随着科技的发展,AMD X64 和 64位的Windows/应用逐渐出现在我们的生活中。64位Windows凭借其支持大内存的特性,迅速占领市场。

但早期几乎没什么64位的应用,如果在64位的操作系统上不兼容32位应用的话,可能会浪费了Windows生态近几十年的发展,所以在64位操作系统上兼容32位应用是必须要做的事。

当你在64位的Windows上启动一个32位的应用的时候,一个32位的模拟器就会被叫起来执行这个32位的应用,这个模拟器会让这个应用认为自己运行在一个32位的Windows上,所有的功能都是可以正常使用的。看起来一切都可以正常的使用了,但是问题来了,如果这个应用要访问一些特殊文件夹呢?

下面是Windows为了兼容32位应用做了一些特殊的文件夹:
Windows文件夹

这里需要提到的就是System32这个文件夹,别看他后面有个32,实质上它是用来放64位应用的。(据说是因为以前的程序很多都是对System32硬编码的,所以微软为了方便各大开发者将32位应用迁移到64位就直接保留了这个名称);SysWOW64其实是用来装32位应用的文件夹。WOW64的全程是:Windows on Windows64。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值