Ho riscontrato lo stesso problema di @jtpereyda e la soluzione di @bobbymcr non ha funzionato neanche per me. Stavo cercando di ottenere tutti i parametri della riga di comando passati negli script node.js senza bisogno di node.exe sul comando.
Il problema è che se hai già associato il programma con l'estensione tramite la Open Withfinestra di dialogo, avrai creato un'associazione di applicazione, anziché un'associazione di estensione di file, tra i due. E le associazioni di applicazioni hanno la precedenza.
Se non ti dispiace modificare il registro, puoi modificare la (Default)chiave nel seguente percorso:
HKEY_CLASSES_ROOT\Applications\node.exe\shell\open\command
È necessario sostituire node.execon l'applicazione che si sta regolando.
Oppure puoi semplicemente eliminare completamente la cartella dell'applicazione dalla HKEY_CLASSES_ROOT\Applicationscartella e la tua ftypeassociazione inizierà a funzionare.
Assicurati di usare %*quale passerà nei restanti argomenti della riga di comando non specificati o niente del tutto. Se lo fai "%2" "%3" "%4" "%5"otterrai 5 parametri stringa vuoti passati nella tua applicazione quando non specifichi alcun argomento della riga di comando.
Infine, se non si è d'accordo con la modifica manuale del registro, è possibile utilizzare uno strumento freeware di Nirsoft - FileTypesManager - http://www.nirsoft.net/utils/file_types_manager.html
Le associazioni di file verranno visualizzate nella parte superiore dell'elenco, senza alcun testo nella prima colonna di estensione. Trova il nome dell'eseguibile nell'elenco e selezionalo per modificare il command linecampo per il opennome dell'azione.
Su Windows 7 le modifiche sono state immediatamente riflesse senza alcun riavvio o riavvio dell'applicazione. Tuttavia l'utilità Nirsoft ha una funzione per "Aggiornare il desktop" su qualsiasi modifica, quindi mi porta a credere che forse Vista o versioni precedenti del sistema operativo memorizzerebbero i dati nella cache. Nel qual caso l'utilità sarebbe una scommessa migliore, altrimenti potrebbe essere necessario disconnettersi e accedere per vedere le modifiche.