Fenêtre "ouvrir avec"...

Soyez le premier à donner votre avis sur cette source.

Vue 16 734 fois - Téléchargée 743 fois

Description

Il existe plusieurs manière d'ouvrir un document en C#, la manière la plus courante étant :
System.Diagnostics.Process.Start("mondocument.ext");

Cependant, cette méthode ne permet que d'utiliser l'application associée avec le document.

La solution que je vous propose là ouvre la fenêtre standard "Ouvrir avec..."

Source / Exemple :


/// <summary>
/// Cette classe permet d'ouvrir un fichier en utilisant
/// la fenêtre "Ouvrir avec" de windows.
/// </summary>
public static class Process
{
    public static global::System.Diagnostics.Process OpenWith(string filename)
    {
        return global::System.Diagnostics.Process.Start("rundll32.exe",
            string.Format("shell32.dll,OpenAs_RunDLL {0}", filename));
    }
}

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
84
C'est bon à savoir ça !
Messages postés
4936
Date d'inscription
lundi 17 février 2003
Statut
Modérateur
Dernière intervention
14 février 2014
32
c'est du C#2... c'est pour faire la différence entre la classe "Maf.System.Process" et la classe "System.Diagnostics.Process"
Messages postés
475
Date d'inscription
jeudi 19 juin 2003
Statut
Membre
Dernière intervention
3 novembre 2008

public static global::System.Diagnostics.Process OpenWith(string filename)
{
return global::System.Diagnostics.Process.Start("rundll32.exe",
string.Format("shell32.dll,OpenAs_RunDLL {0}", filename));
}

je ne comprends pas pkoi global est suivi de deux points. Je n'ai jamais vu ça.
Ça me fait penser aux C++ les deux points :)
Tu pourras m'expliquer s.t.p

Sinon, c'est une bonne astuce
Messages postés
9
Date d'inscription
samedi 12 avril 2003
Statut
Membre
Dernière intervention
10 avril 2014

Merci tres pratique
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
46
Pratique !

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.