2008-11-11 13 views

Répondre

46

De Explorer.exe Command-Line Options for Windows XP

import subprocess 
subprocess.Popen(r'explorer /select,"C:\path\of\folder\file"') 
+0

Merci! J'ai piraté mon cerveau sur celui-ci .. – adams

+0

Je suis conscient que c'est un super vieux post mais ça vaut le coup. J'ai un module qui relie une bibliothèque de document de sharepoint à une fenêtre d'explorateur de Windows de sorte qu'une copie passée localement télécharge à la bibliothèque de doc de sharepoint. Cela doit parfois être rafraîchi et j'utilise du sélénium pour me reconnecter, mais maintenant j'ai une fenêtre Windows Explorer ouverte. Je n'ai aucune idée de la manière de fermer cette fenêtre, de sorte que l'interface graphique de l'application redevienne l'objet de l'utilisateur final. Une idée de comment sélectionner cette fenêtre et la fermer? – Benjooster

+0

haha, je lisais la virgule comme un additionneur de chaîne, j'étais comme WTF continue. Cela fait partie de la chaîne. – shawn

5

Pour une raison quelconque, sur Windows 7, il ouvre toujours les utilisateurs chemin, pour moi qui suit a fonctionné:

import subprocess 
subprocess.call("explorer C:\\temp\\yourpath", shell=True) 
+0

'subprocess.Popen (r'explorer/select," C: \ chemin \ de \ dossier \ fichier "')' fonctionne, mais comment puis-je obtenir cette fenêtre au-dessus des autres fenêtres, si l'utilisateur va à une autre fenêtre après avoir exécuté cette déclaration quelque part dans son programme? – Nancy

+0

Ceci devrait apparaître automatiquement à l'avant – user1767754

0

Une plus agréable, la solution de système d'exploitation sécurisé et la croix est os.startfile() . Lorsqu'il reçoit un dossier au lieu d'un fichier, il ouvre l'explorateur, ou n'importe quel explorateur de fichiers sur le système que vous utilisez. Je sais que je ne réponds pas complètement à la question car il ne sélectionne pas un fichier, mais utiliser subprocess est toujours une mauvaise idée et cette solution peut aider d'autres personnes.

Questions connexes