Pregunta

Quiero abrir una unidad de red de código C #, pero está protegido por contraseña, por lo que cuando trato de abrirlo directamente se produce una excepción. ¿Alguien puede arrojar luz en proporcionar un nombre de usuario y contraseña al abrir el esta unidad? Detalles de la excepción:

at System.Diagnostics.Process.StartWithShellExecuteEx(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at System.Diagnostics.Process.Start(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start(String fileName)

Apenas estoy llamando System.Diagnostics.Process.Start("Z:")

¿Fue útil?

Solución

Z: no es un nombre de archivo. [Editar: Está bien si no está protegido con contraseña, intentado ejecutar su código y funcionó]

Trate de usar un href="http://msdn.microsoft.com/en-us/library/system.diagnostics.processstartinfo_members.aspx" rel="nofollow noreferrer"> ProcessStartInfo objeto

Y sobre el parámetro Nombre de archivo de aquí :

  

El nombre del archivo es cualquier aplicación o documento. Un documento se define como cualquier tipo de archivo que tiene una acción abierta o por defecto asociado a él. Puede ver los tipos de archivo registrados y sus aplicaciones asociadas para su computadora mediante el uso de la caja de diálogo Opciones de carpeta, que está disponible a través del sistema operativo. El botón de cables avanzado a un cuadro de diálogo que indica si hay una acción abierta asociada con un tipo de archivo específico registrados.

Otros consejos

Tal vez usted podría considerar en su lugar la apertura de la ruta UNC que su "unidad z" es significa a punto de hacerlo. Un recordatorio de que un usuario de PC puede desconectar la Z: y sustituirla por cualquier camino que querían ...

¡No es del todo claro qué quiere decir con "lanzar directamente" y "la apertura de esta unidad" pero si como su sección de código sugiere que estamos tratando de poner en marcha el Explorer para la carpeta de la unidad entonces usted podría utilizar el ProcessStartInfo como un mecanismo para proporcionar credenciales.

Si usted está tratando de programación obtener acceso a un archivo (s) en ese recurso compartido, entonces usted podría mirar en el término suplantación para ejecutar sus archivos bloques de código de acceso en virtud de una credencial diferente. Este acceso a un archivo compartido ( UNC) Desde una distancia, no es de confianza de dominio con las credenciales parece particularmente prometedor.

Si usted está tratando de crear realmente la unidad de red utilizando credenciales de pre-especificados a continuación, hay otra solución más aquí - https://serverfault.com/questions/47005/specifying-username-pass-as- parte-de-uno-UNC-camino-o-mapa-red-conduce-para-una-ventana / 47008 # 47008 (no se olvide de desconectar después).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top