Clic droit sur contexte dans l'explorateur de fichiers “Copier les dossiers [par défaut] ici”

0

Je souhaite exécuter un fichier de commandes stocké de manière centralisée à partir d'un menu contextuel, mais ce dernier doit changer sa référence d'emplacement relatif (% ~ dp0) en fonction du clic droit de l'utilisateur au lieu de l'emplacement du fichier.

Donc, fondamentalement, j'ai besoin de cette séquence pour fonctionner ...

1) Lorsqu'un utilisateur sélectionne une option dans un menu contextuel clic droit dans l'Explorateur de fichiers, le dossier dans lequel il se trouve est défini en tant que variable.

2) Un fichier de commandes est démarré et utilise la variable d'emplacement définie à l'étape 1 pour le travail en cours d'exécution ...

Je connais le code de lot pour effectuer le travail souhaité (création de nouveaux dossiers) et je suis en mesure de créer une entrée de registre pour le menu contextuel du clic droit. Je ne sais pas comment transmettre l'emplacement du dossier sur lequel l'utilisateur a cliqué avec le bouton droit. en tant que variable à utiliser dans le fichier de commandes.

Pensées? PowerShell serait-il une meilleure option?

DHH
la source

Réponses:

0

Je l'ai compris ....

1) Entrée du registre pour configurer l'option contextuelle du clic droit.

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Directory\Background\shell\Create Client Folders]
@="&Create Client Folders"
"Icon"="%SystemRoot%\\System32\\shell32.dll,71"

[HKEY_CLASSES_ROOT\Directory\Background\shell\Create Client Folders\command]
@="DRIVELETTER:\\FOLDER\\batch_file_name.bat \"%V\""
  1. Dans le fichier batch, utilisez% cd% pour obtenir l'emplacement du clic droit (ceci est uniquement lorsque vous cliquez dans l'espace vide d'un dossier ,, pas sur un dossier lui-même ... mon exemple de fichier de commandes pour créer des dossiers basés sur le contenu du fichier texte ...

définir TheRoot =% cd%

pour / F "jetons = 1 delims =," %% d IN   (DRIVELETTER: \ FOLDER \ TextFileName.txt) DO md "% TheRoot% \ %% d"

Le fichier texte est juste un fichier délimité par retour avec des noms de dossier

DHH
la source