web-dev-qa-db-fra.com

Où se trouve la commande Windows Run?

Où se trouve la boîte de dialogue Exécuter Windows? Je l'ai ouvert et examiné le gestionnaire de tâches, mais il apparaît simplement comme Explorateur de fichiers. J'ai essayé de montrer les arguments en ligne de commande mais cela ne montre que C:\WINDOWS\Explorer.EXE par opposition à C:\WINDOWS\Explorer.exe. J'ai essayé de rechercher run.exe et autres, mais je n'ai trouvé rien .

J'ai l'impression qu'il peut s'agir simplement d'arguments de ligne de commande passés à Explorer.exe, mais je ne peux pas en être certain. Est-ce son propre fichier? Pourrait-il faire partie de Explorer.exe?

Il a été suggéré qu'il s'agit d'une question en double. J'expliquerai donc que ce n'est pas le cas: je ne demande pas comment le dialogue local localise les exécutables, je demande où se trouve Run.

7
Garhoogin

Où se trouve la boîte de dialogue Exécuter Windows?

La boîte de dialogue Exécuter Windows est une ressource située dans c:\windows\system32\Shell32.dll.

La boîte de dialogue peut être ouverte en exécutant la commande suivante:

c:\windows\system32\rundll32.exe Shell32.dll,#61

Cela fonctionne à la fois sur Windows 32 bits et 64 bits.

12
DavidPostill

Il n'y a pas de tel fichier. Il s'agit littéralement d'un sous-programme au sein d'un autre exécutable ou d'une autre bibliothèque (probablement, Explorer.exe, ou plus vraisemblablement, Shell32.dll).

Une fenêtre visible ne correspond pas à un exécutable. Dessiner une fenêtre n’appelle que des fonctions. Il n'y a aucune raison de supposer qu'il y aurait un seul fichier .exe pour chaque fenêtre que vous voyez ou que vous pouvez passer des options spécifiques à un exécutable pour afficher une fenêtre spécifique!

Avec la boîte de dialogue "Exécuter", vous pourriez avoir de la chance - je pense que c'est probablement un symbole exporté (lire: une fonction appelable de manière externe) de Shell32.dll, et vous pouvez l'appeler en utilisant quelque chose comme:

rundll32.exe Shell32.dll,#{ID of Symbol}
5
Marcus Müller

Il n'y a pas de programme séparé. C'est la fonction nbr. 61 dans Shell32.dll.

La fonction s'appelle RunFileDlg et prend un tas de paramètres compliqués pour spécifier quelle commande à exécuter et comment l’exécuter.

Explorer.exe (qui est en fait l'application qui gère le bureau Windows, y compris la gestion de l'option "Exécuter" dans le menu Démarrer) appelle simplement cette fonction pour effectuer le travail difficile.
(En fait: Explorer n'appelle que la variante de base. La fonction contient des options que Explorer n'utilise pas réellement.)

Vous pouvez écrire votre propre programme dans le langage de programmation de votre choix (dans la mesure où il permet d'appeler des fonctions Windows DLL]) et d'appeler vous-même RunFileDlg.
Toute la documentation à ce sujet est disponible sur le site Web de Microsoft Technet. et googler pour Shell32: RunFileDlg vous donnera également un tas d'exemples de Nice comment le faire.

2
Tonny