2010-09-15 24 views
2

En utilisant le code suivant je peux exécuter Excel à partir de C#:ShellEx: Démarrage Excel minimisés ou caché

System.Diagnostics.Process p = new System.Diagnostics.Process(); 
p.StartInfo.FileName = "cmd.exe"; 
p.Start(); 

Puis-je faire Excel commencer caché ou minimisé en utilisant les paramètres de ligne de commande?

(Edit:. Essayé p.StartInfo.WindowStyle et il n'a eu aucun effet)

Je dois démarrer Excel sans utiliser COM parce que lors du démarrage Excel sur COM, none of the XLA add-ins are loaded.

Répondre

6

Vous pouvez définir la propriété WindowStyle sur Minimized ou Hidden. Comme le suivant:

ProcessStartInfo p = new ProcessStartInfo("excel.exe"); 
p.WindowStyle = ProcessWindowStyle.Minimized; 
Process.Start(p); 
+0

merci pour la réponse. Malheureusement, il semble n'avoir aucun effet (BTW: C'est 'p.StartInfo.WindowStyle', pas' p.WindowStyle') – chiccodoro

+0

Ce code provient d'un programme de travail. Notez les différences subtiles entre ceci et votre code. Il ne crée pas une instance de la classe 'Process'. Il utilise plutôt la classe 'ProcessStartInfo' et la transmet à la méthode statique' Start' de 'Process'. Je l'ai testé avec Office 2007 (Windows XP) et 2010 (Windows 7). – Garett

+0

Oh oui, vous avez raison, donnons un autre essai ... – chiccodoro