Pregunta

Mis usuarios pueden adjuntar documentos a diversas entidades en la aplicación. Por supuesto, si el usuario A adjunta un archivo .TIFF, el usuario B no puede tener un visor para ese tipo de archivo.

Así que me gustaría ser capaz de abrir este diálogo:

alt text http://www.angryhacker.com/toys/cannotopen.png

Mi solicitud es C # con VS2005.
Actualmente hago Process.Start y pase el nombre del archivo. Si no se encuentra ninguna asociación, se produce una excepción.

¿Fue útil?

Solución

Esto debe hacerlo:

System.Diagnostics.Process p = new System.Diagnostics.Process();
p.StartInfo.FileName = "rundll32.exe";
p.StartInfo.Arguments = "shell32.dll,OpenAs_RunDLL " + yourFileFullnameHere;

p.Start();

Otros consejos

Process pr = new Process();
pr.StartInfo.FileName = fileTempPath;
pr.StartInfo.ErrorDialog = true; // important
pr.Start();
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top