[Tutor] getUncPath(mappedDrive)
eryksun
eryksun at gmail.com
Fri Jan 31 02:58:59 CET 2014
On Thu, Jan 30, 2014 at 8:13 AM, danz <zemke at yahoo.com> wrote:
> I apologize to all, but my above code won't work with paths that have
> embedded spaces. It also turns out that the "net use" command inserts a
> carriage-return/line-feed between the Path and Network fields when the last
> character position of the Path exceeds 80 characters.
>
> My above approach seemed simpler, but that's just because I posted it
> before adequate testing. Unfortunately, in order to make it actually work
> for all cases, the implementation becomes more complex and begins to look
> like a kludge. So my recommendation is to use Tim's ctypes approach.
You could use WMI's Win32_LogicalDisk class [1]. One way is to parse
CSV output from wmic.exe [2]:
wmic LogicalDisk WHERE "DriveType=4" ^
GET DeviceID, ProviderName /format:csv
You can parse the output using the csv module. Or use Tim's wmi module [3]:
import wmi
DRIVE_REMOTE = 4
def available_network_drives():
net_drives = dict()
c = wmi.WMI()
for drive in c.Win32_LogicalDisk(DriveType=DRIVE_REMOTE):
net_drives[drive.DeviceID] = drive.ProviderName
return net_drives
[1] http://msdn.microsoft.com/en-us/library/aa394173
[2] http://ss64.com/nt/wmic.html
[3] http://timgolden.me.uk/python/wmi/index.html
More information about the Tutor
mailing list