Su Windows, quali estensioni di file indicano un eseguibile?
Indicare a cosa?
So che la domanda probabilmente suona un po 'confusa al momento, ma la domanda è importante. Mentre spiego perché è importante, la domanda diventerà più chiara.
Sebbene la risposta di Ken White della variabile PATHEXT (nel "ambiente" del prompt dei comandi) sia una risposta piacevole e breve, e quella risposta potrebbe funzionare bene per te, la risposta è incompleta. Il motivo che è incompleto è che la risposta corretta è diversa in base a ciò che si sta tentando di fare.
Ad esempio, potresti provare a:
- Esegui un programma da un "prompt dei comandi tradizionale" ("CMD"), digitando il suo nome file completo
- Esegui un programma da un "prompt dei comandi tradizionale" ("CMD"), digitando il nome file di base, ma lasciando la sua estensione
- Utilizzare il comando "start" incorporato nel "prompt dei comandi tradizionale" ("CMD")
- Esegui un programma da PowerShell
- Esegui un programma dalla voce di menu "Esegui", presente nel menu di avvio
- Esegui un programma da Explorer, cercando di fare doppio clic su un'icona relativa a un file che termina con l'estensione
- Di 'a Microsoft Internet Explorer di aprire un file scaricato
- Esegui un programma utilizzando una funzione dall'API di Microsoft Windows. (Questo è qualcosa che gli utenti finali in genere non fanno, ma i programmatori di computer possono farlo, e quindi le informazioni sono rilevanti per loro.)
Alcuni di questi metodi di esecuzione dei programmi possono utilizzare diversi metodi per determinare quali estensioni di file possono essere supportate. In particolare, l'utilizzo di CMD potrebbe essere diverso dal menu Esegui.
Ad esempio, il blog sconcertante di Wes: Personalizzare il comando Esegui di Windows ... rileva i diversi percorsi da controllare, inclusa la chiave di registro.
La risposta potrebbe anche dipendere dalla versione di Microsoft Windows utilizzata. In Windows 10, ho appena digitato il nome di un file zip al prompt dei comandi e ha aperto Esplora risorse. Mi sembra di ricordare che non funziona in Windows XP (sebbene in Windows XP, potrei digitare "start filename.zip" e ottenere lo stesso tipo di effetto). Quindi o la mia memoria è difettosa o Microsoft ha cercato di apportare miglioramenti nelle versioni più recenti di Windows. (Spero, per me, quest'ultimo.)
Nel tradizionale prompt dei comandi di Windows 10 (eseguendo "CMD"), quando vado nella posizione (usando il comando "CD") di un file zip e digito "nomefile.zip", il file si aprirà. Quando vado in quella posizione e digito "nome file" (tralasciando l'estensione del file ".zip"), Windows non trova il file. Tuttavia, se eseguo " ECHO %PATHEXT%
" e poi " SET PATHEXT=%PATHEXT%;.ZIP
" (e poi " ECHO %PATHEXT%
" di nuovo, per essere sicuro di avere l'effetto desiderato), posso digitare "nomefile" e il prompt dei comandi troverà il file .ZIP. Quindi, questo è l'effetto della variabile% PATHEXT%.
È possibile visualizzare un altro elenco di estensioni eseguendo il ASSOC
comando. Ad esempio, l'esecuzione di questo comando mostra più righe di output, tra cui le seguenti (sul mio sistema) - " .zip=CompressedFolder
". Quindi, posso vedere cosa succede digitando " FTYPE | FIND /I "CompressedFolder"
". (Questo è pensato per la tradizionale riga di comando. A PowerShell non piaceranno quelle virgolette senza caratteri di escape.) (Se digiti " FTYPE
" senza il resto di quella riga di comando, vedrai un po 'più di output su altre estensioni.)
Se digito " ASSOC | FIND /C "."
", sul mio computer Windows 10, allora scopro di avere 339 righe di output quando controllo le associazioni di file in quel modo.
MS KB 162059 è tutto sulla regolazione di come Internet Explorer apre i documenti di Office.
Pertanto, chiedere l'elenco degli eseguibili predefiniti è troppo vago. Componenti diversi di Microsoft Windows possono utilizzare risorse diverse, quindi la domanda deve essere più specifica per una risposta precisa.
La domanda menzionava l'uso di Explorer per fare doppio clic su un'icona. Per vedere l'elenco dei file eseguibili utilizzati, credo che vorrai controllare il registro. Puoi eseguirlo da un prompt dei comandi:
reg query HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts
(Non li elencherò qui. Ce ne sono 286 sul mio computer Windows 10.)
Questo elenca le estensioni. Per visualizzare ulteriori informazioni, inclusi i dettagli sulle estensioni:
reg query HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts /s
Quindi, come puoi vedere ormai, questa domanda apparentemente innocente può effettivamente essere un argomento piuttosto complesso. Credo di aver fatto il mio caso sul perché una domanda dovrebbe essere abbastanza specifica per essere in grado di ottenere una risposta completa che affronti totalmente il modo in cui un singolo componente di Windows può determinare le estensioni del nome file. In poche parole, non esiste una sola risposta per Windows, poiché Windows ha più componenti che si comportano in modi diversi. Spero di aver iniziato a mostrarlo, e ho indicato alcune risorse aggiuntive che mostrano informazioni rilevanti.