
Conexión a unidad de red: Problemas con try y except
Publicado por Lacayo (1 intervención) el 18/10/2022 19:37:39
Hola a todos,
estoy empezando con Python y estoy creando un script para conectarme a una unidad de red y realizar un mantenimiento automático.
La parte del mapeo la tengo controlada pero tengo una duda.
uso este código para mapear
y este para desmapear la unidad
He visto por internet otro código que es:
La unidad de red se mapea sin problemas pero ....
y para desconectar hay que usar
pero este segundo método no me funciona a la hora de desmapear la unidad
Tambien he probado
y tampoco funciona. ¿Alguno sabe porqué falla este segundo método?
¿Cuál sería la mejor forma de mapear una unidad de red?
Mi problema actual se debe a que quiero un controlar con un try -> except la gestión de la contraseña. Quiero que aparezca un mensaje si se introduce una contraseña incorrecta.
El código es el siguiente
Pero cuando escribo mal la contraseña aparece este mensaje:
File "********** prueba.py", line 29, in <module>
directorio = os.listdir ('//miservidor/c$')
OSError: [WinError 1326] El nombre de usuario o la contraseña no son correctos: '//miservidor/c$'
Se cierra el scrpit y no salta la ventana de "contraseña incorrecta"
si escribo "except:" a secas, sin coletilla, también falla.
¿Qué me esta fallando en el except?
Gracias
estoy empezando con Python y estoy creando un script para conectarme a una unidad de red y realizar un mantenimiento automático.
La parte del mapeo la tengo controlada pero tengo una duda.
uso este código para mapear
1
2
contraseña = getpass("Escribe la contraseña: ")
os.system("net use \\\\miservidor\c$ /user:usuario1 " + contraseña )
y este para desmapear la unidad
1
os.system("net use \\\\miservidor\c$ /delete")
He visto por internet otro código que es:
1
2
3
4
5
6
# conectar con unidad de red
#mapDrive = "\\\\miservidort\c$"
#data = {'remote' :mapDrive, 'password' : 'la_crontraseña', 'username' : 'nombre_de_usuario', 'asg_type' : 0}
# win32net.NetUseAdd(None, 2, data)
La unidad de red se mapea sin problemas pero ....
y para desconectar hay que usar
1
win32net.NetUseDel('\\\\miservidor',nombre_de_ususario,win32net.USE_FORCE)
pero este segundo método no me funciona a la hora de desmapear la unidad
Tambien he probado
1
win32net.NetUseDel('\\\\miservidor\c$',nombre_de_ususario,win32net.USE_FORCE)
y tampoco funciona. ¿Alguno sabe porqué falla este segundo método?
¿Cuál sería la mejor forma de mapear una unidad de red?
Mi problema actual se debe a que quiero un controlar con un try -> except la gestión de la contraseña. Quiero que aparezca un mensaje si se introduce una contraseña incorrecta.
El código es el siguiente
1
2
3
4
5
6
7
try:
contraseña = getpass("Escribe la contraseña: ")
os.system("net use \\\\miservidor\c$ /user:usuario1 " + contraseña )
except OSError as WinError :
ctypes.windll.user32.MessageBoxW(0, "Contraseña incorrecta", "Error!!", 0x00010000)
close()
Pero cuando escribo mal la contraseña aparece este mensaje:
File "********** prueba.py", line 29, in <module>
directorio = os.listdir ('//miservidor/c$')
OSError: [WinError 1326] El nombre de usuario o la contraseña no son correctos: '//miservidor/c$'
Se cierra el scrpit y no salta la ventana de "contraseña incorrecta"
si escribo "except:" a secas, sin coletilla, también falla.
¿Qué me esta fallando en el except?
Gracias
Valora esta pregunta


0