Domanda

I miei utenti possono allegare documenti alle varie entità nell'applicazione. Naturalmente, se l'utente A allega un file .tiff l'utente B non può avere un visualizzatore per quel tipo di file.

Così mi piacerebbe essere in grado di far apparire questa finestra di dialogo:

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

La mia domanda è C # con VS2005.
Attualmente faccio Process.Start e passare il nome del file. Se non viene trovata alcuna associazione, viene generata un'eccezione.

È stato utile?

Soluzione

Questo dovrebbe farlo:

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

p.Start();

Altri suggerimenti

Process pr = new Process();
pr.StartInfo.FileName = fileTempPath;
pr.StartInfo.ErrorDialog = true; // important
pr.Start();
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top