2009-08-06 6 views
7

Je peux trouver de nombreux exemples sur la façon d'obtenir des arguments dans une application de console, mais je n'arrive pas à trouver un exemple de la façon d'obtenir des arguments dans une application de formulaire Windows.Comment obtenir des arguments dans une application de formulaire?

Je voudrais suivre les choses.

  1. Chaque fois que j'ouvre un fichier jpg, Windows lance mon application.
  2. Je voudrais connaître le chemin et le nom du fichier jpg de mon application.

Comment faire cela?

Répondre

16
+0

Un peu plus propre que ma méthode et je ne trouve rien de négatif à ce sujet. Vous voudrez peut-être aller avec ceci par souci de simplicité –

+1

Hmm, je ne suis pas d'accord sur ce point étant plus propre que d'utiliser un paramètre de méthode. Ce dernier vous donne un point fixe où décider comment votre application devrait se comporter au démarrage, plutôt que d'analyser la ligne de commande dans un endroit arbitraire. – Thorarin

+0

J'ai essayé d'utiliser cet exemple de Microsoft, cependant, je n'ai rien eu quand l'application s'est ouverte. Il n'y avait pas d'arguments. Cela dit, je ne l'ai pas ouvert à partir d'une ligne de commande, je l'ai ouvert à partir d'Explorer, en double-cliquant sur le fichier. –

9

ouvrir Program.cs, sur un fichier> nouveau> projet WinForm, vous aurez

static class Program 
{ 
    [STAThread] 
    static void Main() 
    { 
     Application.EnableVisualStyles(); 
     Application.SetCompatibleTextRenderingDefault(false); 
     Application.Run(new Form1()); 
    } 
} 

changement à ce

static class Program 
{ 
    [STAThread] 
    static void Main(string[] args) 
    { 
     Application.EnableVisualStyles(); 
     Application.SetCompatibleTextRenderingDefault(false); 
     Application.Run(new Form1()); 
    } 
} 

Maintenant son comme la applications de la console, vous auriez accès via des arguments.

Même si vous n'utilisez pas cette option, vous devez savoir comment l'application winform est initialisée :) De cette façon, vous pouvez exécuter différents formulaires ou ne pas exécuter de formulaire du tout.

Questions connexes