问题 以编程方式检查驱动器号是否是共享/网络驱动器


我搜索了一会儿但发现没有任何帮助我。有没有办法检查驱动器号是否代表共享驱动器/网络驱动器或python中的本地光盘?我想有一些windows api函数可以给我这些信息,但我找不到它。也许甚至已经在python中集成了一种方法?

我正在寻找的是具有这种或类似行为的东西:

someMagicMethod("C:\\")  #outputs True 'is a local drive'
someMagicMethod("Z:\\")  #outputs False 'is a shared drive'

这对我也有帮助:

someMagicMethod2()  #outputs list of shared drive letters

非常感谢提前!


12372
2018-04-30 10:05


起源



答案:


GetDriveType 功能 win32file 模块可以帮助你 - 它是一个包装 GetDriveType WINAPI功能。

import win32file
isNetworkDrive = win32file.GetDriveType("Z:\\") == win32file.DRIVE_REMOTE

你将能够枚举所有 GetLogicalDriveStrings() 功能在 win32api 模块,然后使用循环只挑选网络驱动器。


12
2018-04-30 10:23



这就是我正在寻找的东西!非常感谢! - Philip Daubmeier


答案:


GetDriveType 功能 win32file 模块可以帮助你 - 它是一个包装 GetDriveType WINAPI功能。

import win32file
isNetworkDrive = win32file.GetDriveType("Z:\\") == win32file.DRIVE_REMOTE

你将能够枚举所有 GetLogicalDriveStrings() 功能在 win32api 模块,然后使用循环只挑选网络驱动器。


12
2018-04-30 10:23



这就是我正在寻找的东西!非常感谢! - Philip Daubmeier