PDA

View Full Version : Aggiungere voce menu contestuale file


Mr0range
15-12-2014, 15:58
Salve,

su win 7 vorrei aggiungere alcune voci ai menu contestuali (tasto dx) per specifiche estensioni, per fare qualche esempio:

su un .jpg vorrei aggiungere: "modifica con XXX"
su un .mp3 vorrei aggiungere: "riproduci con YYY"
etc...

Preciso che i programmi che vorrei aggiungere non danno la possibilità di modificare il menu contestuale (quindi nella gestione delle impostazioni dei rispettivi programmi non c'è alcuna voce che mi dia la possibilità di fare: "aggiungi voce a menu contestuale")

In passato l'ho già fatto modificando manualmente le voci all'interno del registro, ma è un procedimento lungo e devo stare molto attento a non fare errori, quindi preferirei trovare un tool che possa fare queste operazioni in modo automatico.
Online ho visto che c'è qualcosa ma vorrei il parere di qualche utente più esperto, non vorrei trovarmi con un tool che mi rovina tutto il registro con voci spam, o qualche programma che resta sempre attivo in background, o peggio ancora che si installi come shell alternativa.

Suggerimenti?

x_Master_x
16-12-2014, 08:57
Prima che il thread venga invaso da programmini casuali, la procedura manuale è molto facile, non è una cosa lunga se segui questa breve guida.

Per prima cosa nel registro vai all'estensione desiderata, es:
HKEY_CLASSES_ROOT\jpegfile
Tasto destro sulla chiave "jpegfile" --> Esporta e salva una copia di backup, giusto per sicurezza visto che hai "paura di fare errori"

Nel percorso:
HKEY_CLASSES_ROOT\jpegfile\shell

Tasto destro su "shell" --> Nuovo --> Chiave. La puoi chiamare come vuoi, meglio se "menu"

Nel percorso:
HKEY_CLASSES_ROOT\jpegfile\shell\menu

Tasto destro --> Nuovo --> Valore stringa. I valori di base sono:
MUIVerb cioè il nome della voce del menù
Icon cioè l'icona, di solito è il percorso completo dell'eseguibile
Position cioè la posizione della voce, può essere "Top" oppure "Bottom", sopra o sotto.

Quella da aggiungere come minimo è MUIVerb ma in teoria sono tutte opzionali e non sono indispensabili per il corretto funzionamento della voce del menu.

Nel percorso:
HKEY_CLASSES_ROOT\jpegfile\shell\menu
Tasto destro su "menu" --> Nuovo --> Chiave. Da chiamare "command"

Nel percorso
HKEY_CLASSES_ROOT\jpegfile\shell\menu\command

Tasto destro su "(Predefinito)" --> Modifica
Devi inserire il percorso completo del programma ed il simbolo "%1" che rappresenta il primo valore da linea di comando, esempio:
"C:\Percorso\Software.exe" "%1"
Se il programma da aggiungere non ha una linea di comando oppure ha i parametri diversi ( esempio Blocco Note è notepad.exe /a "%1" ) non funzionerà, devi controllare nella Guida in linea del software e questo vale anche se usassi un software di terze parti per aggiungere la voce.

Finito. Ci sarebbero altre possibilità come i menu a cascata, versioni extended etc. ma la procedura di base è tutta qui.

Questo è il file di registro completo:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\jpegfile\shell\menu]
"MUIVerb"="Modifica con Paint"
"Icon"="mspaint.exe"
"Position"="Top"

[HKEY_CLASSES_ROOT\jpegfile\shell\menu\command]
@="mspaint.exe \"%1\""


Risultato:
http://i61.tinypic.com/v2v50n.png

Non quotare questo post per eventuali modifiche

tallines
16-12-2014, 10:55
Salve,

su win 7 vorrei aggiungere alcune voci ai menu contestuali (tasto dx) per specifiche estensioni, per fare qualche esempio:

su un .jpg vorrei aggiungere: "modifica con XXX"
su un .mp3 vorrei aggiungere: "riproduci con YYY"
etc...



Per il lettore di file mp3 > Riproduci con è più semplice rispetto ad andare a modificare il registro, basta che selezioni un file mp3 e vai alla voce > Apri con .

Se il programma è installato dovresti già vedere la voce .

Altrimenti vai sempre in Apri con / Programma predefinito..., lo selezioni alla voce Sfoglia e metti il segno di spunta alla voce > Usa sempre il programma selezionato per aprire questo tipo di file .

Eress
16-12-2014, 11:41
Comunque sia i programmi se ben fatti, una volta installati, dovrebbero offrire la possibilità di scegliere quale opzione aggiungere al menu contestuale.

Mr0range
16-12-2014, 12:18
@Eress
Adobe non consente di farlo, o lo metti come predefinito o nada...

@tallines
grazie, ma non intendevo come impostare un prog predefinito, vorrei aggiungere delle voci ai menu contestuali

@x_Master_x
Grazie, come dicevo all'inizio farlo così non è proprio rapidissimo ma direi che è la soluzione più sicura/semplice... ho seguito la tua procedura per i jpg ed è andato tutto ok, ho ripetuto la stessa identica cosa per i png ma niente, non mi da nessuna voce, da cosa dipende?

x_Master_x
16-12-2014, 12:28
Una volta che ci hai preso la mano ci vogliono 20 secondi, considera che puoi anche fare un backup della chiave da utilizzare come default per il futuro. Se non vedi nessuna voce probabilmente hai sbagliato chiave, una volta aggiunto "menu" sotto shell come minimo devi vedere la voce "menu" cliccando con il tasto destro sull'estensione scelta.

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\pngfile\shell\menu]
"MUIVerb"="Modifica con Paint"
"Icon"="mspaint.exe"
"Position"="Top"

[HKEY_CLASSES_ROOT\pngfile\shell\menu\command]
@="mspaint.exe \"%1\""

tallines
16-12-2014, 13:03
@tallines
grazie, ma non intendevo come impostare un prog predefinito, vorrei aggiungere delle voci ai menu contestuali

Come da post n. 2 ;)

Mr0range
16-12-2014, 13:13
Una volta che ci hai preso la mano ci vogliono 20 secondi, considera che puoi anche fare un backup della chiave da utilizzare come default per il futuro. Se non vedi nessuna voce probabilmente hai sbagliato chiave, una volta aggiunto "menu" sotto shell come minimo devi vedere la voce "menu" cliccando con il tasto destro sull'estensione scelta.


Mi sa che fireworks (che si era impostato come predefinito sui png) mi ha sminchiato tutte le voci dei png e anche se adesso ho reimpostato il viewer come predefinito ho ancora un pò di voci che mi bloccato la modifica che ho fatto


EDIT: ho provato a impostare gli stessi parametri di jpg sotto HKEY_CLASSES_ROOT\.png ma niente, non esce nessuna voce

x_Master_x
16-12-2014, 14:30
La chiave è pngfile.

Usa questo:

Windows Registry Editor Version 5.00

[-HKEY_CLASSES_ROOT\.png]

[HKEY_CLASSES_ROOT\.png]
"Content Type"="image/png"
@="pngfile"
"PerceivedType"="image"

[HKEY_CLASSES_ROOT\.png\OpenWithList]

[HKEY_CLASSES_ROOT\.png\OpenWithList\ehshell.exe]

[HKEY_CLASSES_ROOT\.png\OpenWithProgids]
"pngfile"=""

[HKEY_CLASSES_ROOT\.png\PersistentHandler]
@="{098f2470-bae0-11cd-b579-08002b30bfeb}"

[-HKEY_CLASSES_ROOT\pngfile]

[HKEY_CLASSES_ROOT\pngfile]
@="PNG Image"
"EditFlags"=dword:00010000
"FriendlyTypeName"=hex(2):40,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,\
00,6f,00,6f,00,74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,\
32,00,5c,00,73,00,68,00,65,00,6c,00,6c,00,33,00,32,00,2e,00,64,00,6c,00,6c,\
00,2c,00,2d,00,33,00,30,00,35,00,39,00,38,00,00,00
"ImageOptionFlags"=dword:00000001

[HKEY_CLASSES_ROOT\pngfile\CLSID]
@="{25336920-03F9-11cf-8FD0-00AA00686F13}"

[HKEY_CLASSES_ROOT\pngfile\DefaultIcon]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,69,00,6d,00,\
61,00,67,00,65,00,72,00,65,00,73,00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,38,\
00,33,00,00,00

[HKEY_CLASSES_ROOT\pngfile\shell]

[HKEY_CLASSES_ROOT\pngfile\shell\open]
"MuiVerb"=hex(2):40,00,25,00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,00,46,00,\
69,00,6c,00,65,00,73,00,25,00,5c,00,57,00,69,00,6e,00,64,00,6f,00,77,00,73,\
00,20,00,50,00,68,00,6f,00,74,00,6f,00,20,00,56,00,69,00,65,00,77,00,65,00,\
72,00,5c,00,70,00,68,00,6f,00,74,00,6f,00,76,00,69,00,65,00,77,00,65,00,72,\
00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,33,00,30,00,34,00,33,00,00,00

[HKEY_CLASSES_ROOT\pngfile\shell\open\command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,72,00,75,00,\
6e,00,64,00,6c,00,6c,00,33,00,32,00,2e,00,65,00,78,00,65,00,20,00,22,00,25,\
00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,00,46,00,69,00,6c,00,65,00,73,00,\
25,00,5c,00,57,00,69,00,6e,00,64,00,6f,00,77,00,73,00,20,00,50,00,68,00,6f,\
00,74,00,6f,00,20,00,56,00,69,00,65,00,77,00,65,00,72,00,5c,00,50,00,68,00,\
6f,00,74,00,6f,00,56,00,69,00,65,00,77,00,65,00,72,00,2e,00,64,00,6c,00,6c,\
00,22,00,2c,00,20,00,49,00,6d,00,61,00,67,00,65,00,56,00,69,00,65,00,77,00,\
5f,00,46,00,75,00,6c,00,6c,00,73,00,63,00,72,00,65,00,65,00,6e,00,20,00,25,\
00,31,00,00,00

[HKEY_CLASSES_ROOT\pngfile\shell\open\DropTarget]
"Clsid"="{FFE2A43C-56B9-4bf5-9A79-CC6D4285608A}"

[HKEY_CLASSES_ROOT\pngfile\shell\printto]

[HKEY_CLASSES_ROOT\pngfile\shell\printto\command]
@=hex(2):22,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,\
00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,72,00,\
75,00,6e,00,64,00,6c,00,6c,00,33,00,32,00,2e,00,65,00,78,00,65,00,22,00,20,\
00,22,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,\
25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,73,00,68,\
00,69,00,6d,00,67,00,76,00,77,00,2e,00,64,00,6c,00,6c,00,22,00,2c,00,49,00,\
6d,00,61,00,67,00,65,00,56,00,69,00,65,00,77,00,5f,00,50,00,72,00,69,00,6e,\
00,74,00,54,00,6f,00,20,00,2f,00,70,00,74,00,20,00,22,00,25,00,31,00,22,00,\
20,00,22,00,25,00,32,00,22,00,20,00,22,00,25,00,33,00,22,00,20,00,22,00,25,\
00,34,00,22,00,00,00

[-HKEY_CLASSES_ROOT\SystemFileAssociations\.png]

[HKEY_CLASSES_ROOT\SystemFileAssociations\.png]
"PreviewDetails"="prop:System.Photo.DateTaken;*System.Image.Dimensions;*System.Size;*System.OfflineAvailability;*System.OfflineStatus;*System.DateCreated;*System.SharedWith"
"FullDetails"="prop:System.PropGroup.Origin;System.Photo.DateTaken;System.PropGroup.Image;System.Image.Dimensions;System.Image.HorizontalSize;System.Image.VerticalSize;System.Image.BitDepth;System.PropGroup.FileSystem;System.ItemNameDisplay;System.ItemType;System.ItemFolderPathDisplay;System.DateCreated;System.DateModified;System.Size;System.FileAttributes;System.OfflineAvailability;System.OfflineStatus;System.SharedWith;System.FileOwner;System.ComputerName"
"InfoTip"="prop:System.ItemType;System.Photo.DateTaken;*System.Image.Dimensions;*System.Size"
"ExtendedTileInfo"="prop:System.ItemType;System.Photo.DateTaken;*System.Image.Dimensions"
"ImageOptionFlags"=dword:00000001

[HKEY_CLASSES_ROOT\SystemFileAssociations\.png\OpenWithList]

[HKEY_CLASSES_ROOT\SystemFileAssociations\.png\OpenWithList\PhotoViewer.dll]

[HKEY_CLASSES_ROOT\SystemFileAssociations\.png\Shell]

[HKEY_CLASSES_ROOT\SystemFileAssociations\.png\Shell\setdesktopwallpaper]
"MultiSelectModel"="Player"
@=hex(2):40,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,\
00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,73,00,\
74,00,6f,00,62,00,6a,00,65,00,63,00,74,00,2e,00,64,00,6c,00,6c,00,2c,00,2d,\
00,34,00,31,00,37,00,00,00
"NeverDefault"=""
"SuppressionSlapiPolicy"="ChangeDesktopBackground-Enabled"

[HKEY_CLASSES_ROOT\SystemFileAssociations\.png\Shell\setdesktopwallpaper\Command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
00,5c,00,45,00,78,00,70,00,6c,00,6f,00,72,00,65,00,72,00,2e,00,65,00,78,00,\
65,00,00,00
"DelegateExecute"="{ff609cc7-d34d-4049-a1aa-2293517ffcc6}"

[HKEY_CLASSES_ROOT\SystemFileAssociations\.png\ShellEx]

[HKEY_CLASSES_ROOT\SystemFileAssociations\.png\ShellEx\ContextMenuHandlers]

[HKEY_CLASSES_ROOT\SystemFileAssociations\.png\ShellEx\ContextMenuHandlers\ShellImagePreview]
@="{FFE2A43C-56B9-4bf5-9A79-CC6D4285608A}"

[-HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png]

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png]

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\OpenWithProgids]
"pngfile"=hex(0):


Dovrebbe ripristinare il formato PNG alla situazione di default. A quel punto prova ad aggiungere il .reg che ti ho scritto nel post #6 precedente a questo.

Mr0range
16-12-2014, 14:41
si si su quella classe che ti ho detto prima infatti avevo impostato "pngfile" come predefinito invece di una stringa con qualcosa di fireworks dentro...

ad ogni modo ora provo a importare questo codice che mi hai passato, a tal proposito come devo procedere? da notepad salvo in .reg e importo su regedit?

x_Master_x
16-12-2014, 15:28
Da Blocco Note salvi come .reg ( non .txt.reg, l'icona è diversa ) e lo esegui con doppio click sul file, confermando l'aggiunta al registro.

Mr0range
16-12-2014, 15:51
risolto! :D
Thanks