如何在python(windows)中获得磁盘>2TB的原始磁盘访问

2024-09-28 22:21:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试在windows上使用python获得原始磁盘访问,以使用python来驱动>;2TB。在

对于2TB以下的磁盘,使用wmi可以找到有关磁盘大小的详细信息,但对于4TB驱动器,它只能看到前2TB。在

我想这是因为wmi是wmi32调用的包装器,所以只能寻址2TB 2^32。在

示例代码:
import wmi
w=wmi.WMI()
w.Win32_DiskDrive()
w.Win32_DiskDrive()[4].size
w.Win32_DiskDrive()[4].DeviceID

u'2199020382720'
u'\\.\PHYSICALDRIVE6'

然后我就可以像文件一样使用DeviceID访问原始磁盘。
in=open('\\\\.\\PHYSICALDRIVE6',"rb")
in.seek(1024)
data=in.read(512)

我的问题是,是否有任何方法可以在windows下访问python下的完整4TB。我一直在寻找一个wmi64模块,但没有用。我已经看过wmic命令行的东西,但是看起来是相同的32位包装器。 我的操作系统是Win7 64位的,python是为64位编译的。在

如果我试图查找超过2TB的数据,则IOError[Errno13]权限被拒绝

在python下有什么方法或模块允许我访问2TB以上的原始磁盘吗?在

谢谢。在


Tags: 模块方法ingt示例windows详细信息wmi