[Tutor] python win32 drive mapping help
wesley chun
wescpy at gmail.com
Sat Sep 26 02:26:32 CEST 2009
>> I tried this:
>> win32net.NetUseDel(None, 1,{'local':'k:'})
>>
>> but I got this error:
>> Traceback (most recent call last):
>> File "test.py", line 33, in <module>
>> win32net.NetUseDel(None, 1,{'local':'k:'})
>> TypeError: an integer is required
>
> You have the wrong sequence for NetUseDel(). Try:
> win32net.NetUseDel(None, 'k:', win32net.USE_FORCE)
>
> (It's the 3rd argument it was complaining about, since that's a constant (of
> value 1, actually)).
>
> I'm guessing you're confusing the docs for NetUseAdd for NetUseDel.
dave is correct. you're assuming that the signatures of
NetUse{Add,Del}() are the same, and they're not. i actually never use
the 3rd arg and just make the call using 2 args:
>>> win32net.NetUseDel(None, r'Z:')
seems to work fine. i also read somewhere that win32net is the older
16-bit backwards-compatible way of doing things and that you should
use the stuff in win32wnet instead -- i wonder if this is related to
the OP error msg saying that win32wnet wasn't found... perhaps
win32net just wraps win32wnet?
anyway, here's how to do it using the win32wnet equivalents:
>>> import win32wnet
>>> win32wnet.WNetAddConnection2(1, 'Z:', r'\\remote\disk', None, 'user', 'secret')
>>> os.listdir(r'Z:\tmp')
['foo.txt', 'bar.txt', 'subdir']
>>> win32wnet.WNetCancelConnection2('Z:', 0, False)
>>> os.listdir(r'Z:\tmp')
Traceback (most recent call last):
File "<interactive input>", line 1, in <module>
WindowsError: [Error 3] The system cannot find the path specified: 'Z:\\tmp/*.*'
i also read online that NetUseAdd() cannot take a user arg... only
password, so if the remote disk requires a username, then you must use
the win32wnet interface. also note that the force param is required
for WNetCancelConnection2(), so i pass in False for that (as opposed
to getting the full constant from win32netcon).
hope this helps!
-- wesley
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
"Core Python Programming", Prentice Hall, (c)2007,2001
"Python Fundamentals", Prentice Hall, (c)2009
http://corepython.com
"Python Web Development with Django", Addison Wesley, (c) 2009
http://withdjango.com
wesley.j.chun :: wescpy-at-gmail.com
python training and technical consulting
cyberweb.consulting : silicon valley, ca
http://cyberwebconsulting.com
More information about the Tutor
mailing list