Question
Menu contextuel Nouveu
- Besançon Ludovic
- Auteur du sujet
- Hors Ligne
- Membre senior
-
Réduire
Plus d'informations
- Messages : 44
- Remerciements reçus 0
il y a 15 ans 4 mois #8038
par Besançon Ludovic
Menu contextuel Nouveu a été créé par Besançon Ludovic
Bonjour,
Deux questions sur le menu contextuel \"Nouveau ...\" :
1) Je voudrais pouvoir, dans un répertoire, sous l'explorateur, faire bouton droit, nouveau, fichier \"Script Powershell\" et obtenir un fichier de 0K s'appelant new.ps1
En dehors des deux fantaisies concernant le libellé du menu et le nom du fichier, je n'ai abouti à rien. J'ai cru lire qu'il suffisait de crééer une clé ShellNew sous .ps1 dans HKCR, puis de créer une valeur string NullFile vide.
Mais non. Cela n'a pas marché, ni sous Win 7, ni sous XP.
2) Je voudrais supprimer tous les éléments du menu contextuel \"Nouveau\" qui me perturbent.
A l'aide de Nirsoft (nirsoft.net/utils/shell_menu_new.html) je me suis rédigé ma \"petite\" requête :
[code:1]Get-ChildItem -path HKLM:\Software\Classes -recurse | where {$_.PSChildName -eq 'ShellNew'}| Where {((Get-Item -path ($_.Name -replace 'HKEY_LOCAL_MACHINE', 'HKLM:')).ValueCount -gt 0) -and ($_.Name -notmatch 'CLSID') -and ($_.Name -notmatch 'Folder') -and ($_.Name -notmatch '.library-ms') -and ($_.Name -notmatch '.txt') -and ($_.Name -notmatch '.lnk') } | ForEach {$_.Name; ForEach ($myProp in (Get-Item -path ($_.Name -replace 'HKEY_LOCAL_MACHINE', 'HKLM:')).Property) {rename-itemproperty -path ($_.Name -replace 'HKEY_LOCAL_MACHINE', 'HKLM:') -name $myProp -newname ('~' + $myProp)} }[/code:1]
Mais je la trouve longue ... à l'exécution !
Et je ne sais pas où elle va traîner, mais elle me remonte des erreurs désagréable.
Même si elle est fonctionnelle !!!
Des idées sur ces deux sujets ?
Merci de votre aide.
Ludovic.
Deux questions sur le menu contextuel \"Nouveau ...\" :
1) Je voudrais pouvoir, dans un répertoire, sous l'explorateur, faire bouton droit, nouveau, fichier \"Script Powershell\" et obtenir un fichier de 0K s'appelant new.ps1
En dehors des deux fantaisies concernant le libellé du menu et le nom du fichier, je n'ai abouti à rien. J'ai cru lire qu'il suffisait de crééer une clé ShellNew sous .ps1 dans HKCR, puis de créer une valeur string NullFile vide.
Mais non. Cela n'a pas marché, ni sous Win 7, ni sous XP.
2) Je voudrais supprimer tous les éléments du menu contextuel \"Nouveau\" qui me perturbent.
A l'aide de Nirsoft (nirsoft.net/utils/shell_menu_new.html) je me suis rédigé ma \"petite\" requête :
[code:1]Get-ChildItem -path HKLM:\Software\Classes -recurse | where {$_.PSChildName -eq 'ShellNew'}| Where {((Get-Item -path ($_.Name -replace 'HKEY_LOCAL_MACHINE', 'HKLM:')).ValueCount -gt 0) -and ($_.Name -notmatch 'CLSID') -and ($_.Name -notmatch 'Folder') -and ($_.Name -notmatch '.library-ms') -and ($_.Name -notmatch '.txt') -and ($_.Name -notmatch '.lnk') } | ForEach {$_.Name; ForEach ($myProp in (Get-Item -path ($_.Name -replace 'HKEY_LOCAL_MACHINE', 'HKLM:')).Property) {rename-itemproperty -path ($_.Name -replace 'HKEY_LOCAL_MACHINE', 'HKLM:') -name $myProp -newname ('~' + $myProp)} }[/code:1]
Mais je la trouve longue ... à l'exécution !
Et je ne sais pas où elle va traîner, mais elle me remonte des erreurs désagréable.
Même si elle est fonctionnelle !!!
Des idées sur ces deux sujets ?
Merci de votre aide.
Ludovic.
Connexion ou Créer un compte pour participer à la conversation.
- Besançon Ludovic
- Auteur du sujet
- Hors Ligne
- Membre senior
-
Réduire
Plus d'informations
- Messages : 44
- Remerciements reçus 0
il y a 15 ans 4 mois #8041
par Besançon Ludovic
Réponse de Besançon Ludovic sur le sujet Re:Menu contextuel Nouveu
Je ne suis pas allé au bout de mon test avec XP.
Après le redémarrage du PC, j'ai mon option qui est apparu dans le menu.
Cela fonctionne donc avec XP.
Mais pas avec Win 7.
Ludovic.
Après le redémarrage du PC, j'ai mon option qui est apparu dans le menu.
Cela fonctionne donc avec XP.
Mais pas avec Win 7.
Ludovic.
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 68
il y a 15 ans 4 mois #8042
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:Menu contextuel Nouveu
Salut,Ludovic écrit:
[code:1]
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\.PS1\ShellNew]
\"NullFile\"=\"\"
[/code:1]
Cela fonctionne, faire F5 pour mettre à jour.
par contre pour le nom je n'ai pas cherché, voir aussi ce lien .
Pour ta requête, comme elle n'est pas documentée, je ne saurais t'aider. Un début :
[code:1]
Get-ChildItem -path HKLM:\Software\Classes -recurse -include 'ShellNew'|
Where {
((Get-Item -path ($_.Name -replace 'HKEY_LOCAL_MACHINE', 'HKLM:')).ValueCount -gt 0) -and
($_.Name -notmatch 'CLSID|Folder|\.library-ms|\.txt|\.lnk') }
[/code:1]
Je ne suis pas certains de la pertinence de la regex
'^CLSID$' est peut être préférable...
En utilisant ceci ce fichier de reg :Mais pas avec Win 7.
[code:1]
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\.PS1\ShellNew]
\"NullFile\"=\"\"
[/code:1]
Cela fonctionne, faire F5 pour mettre à jour.
par contre pour le nom je n'ai pas cherché, voir aussi ce lien .
Pour ta requête, comme elle n'est pas documentée, je ne saurais t'aider. Un début :
[code:1]
Get-ChildItem -path HKLM:\Software\Classes -recurse -include 'ShellNew'|
Where {
((Get-Item -path ($_.Name -replace 'HKEY_LOCAL_MACHINE', 'HKLM:')).ValueCount -gt 0) -and
($_.Name -notmatch 'CLSID|Folder|\.library-ms|\.txt|\.lnk') }
[/code:1]
Je ne suis pas certains de la pertinence de la regex
'^CLSID$' est peut être préférable...
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.037 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Menu contextuel Nouveu