0 Record (s)
Abbiamo trovato risultati corrispondenti a "0" in 0 ms
Soddisfare
CON, PRN, AUX e NUL sono dispositivi, non nomi di file, in Windows 11
Raymond Chen spiega perché una regola di DOS 1.0 è ancora attiva in Windows 11
Ho testato la regola risalente all'era DOS su Windows 11 26H2 e NUL.txt è stato accettato
MS spiega perché Windows 11 vieta ancora i file chiamati CON: la regola risale a MS-DOS
Tempo: Oct, 19, 2026
Windows 11 26H2 does not allow a folder to be named CON, a rule dating back to DOS

Windows 11 consente ai file di avere nomi lunghi 200 caratteri, pieni di spazi ed emoji, ma Esplora file si rifiuta di assegnare a un file o a una cartella il nome CON. CON, PRN, AUX, NUL, da COM1 a COM9 e da LPT1 a LPT9 sono nomi di dispositivo riservati. L'ingegnere di MS Raymond Chen ne fa risalire l'origine a DOS 1.0, una versione che non supportava nemmeno le cartelle.

Ho verificato la regola su un PC con Windows 11 26H2. La restrizione introdotta dal sistema operativo del 1981 è ancora saldamente in vigore, sebbene Windows Latest abbia scoperto che una parte non funziona più come descritto nella documentazione di MS.

File Explorer on Windows 11 26H2 showing an error after an attempt to rename a folder to CON

CON, PRN, AUX e NUL sono dispositivi, non nomi di file, in Windows 11

Ogni nome riservato corrisponde a un dispositivo. NUL è particolarmente degno di nota: agisce come un buco nero che elimina qualsiasi cosa gli venga inviata.

La documentazione di MS sulla denominazione dei file continua a indicare agli sviluppatori: “Non utilizzare i seguenti nomi riservati come nome di un file.” Le restrizioni si applicano anche alle cartelle, perché Windows considera una cartella come un tipo speciale di file.

Windows 11 refusing to rename a folder as PRN

Secondo MS, l'aggiunta di un'estensione non dovrebbe consentire di aggirare la restrizione, anche se in alcuni casi ciò accade. L'azienda afferma: “NUL.txt e NUL.tar.gz sono entrambi equivalenti a NUL.” Nemmeno le cifre in apice fanno eccezione. Windows interpreta ¹, ² e ³ come cifre, il che significa che nomi come COM¹ e LPT³ sono riservati “in ogni directory.”

Dal punto di vista dell'architettura, COM1 è un collegamento alla porta seriale all'interno del kernel di Windows. MS lo definisce un nome di dispositivo MS-DOS, quindi digitando COM1 si accede alla porta anziché a un file.

Raymond Chen spiega perché una regola di DOS 1.0 è ancora attiva in Windows 11

La storia inizia con CP/M, il sistema operativo con cui MS-DOS cercava di mantenere la compatibilità. In CP/M, i nomi dei dispositivi includevano sempre i due punti, come CON:. MS-DOS rese facoltativi i due punti, una decisione che Michal Necasek dell'OS/2 Museum definisce il “difetto fatale.” Un nome semplice come CON non fornisce a DOS alcuna indicazione sul fatto che si riferisca a un file o alla console.

Sanco 8001 computer running CP/M 2.2 in 1982

In un articolo del 2003 pubblicato sul suo blog Old New Thing, Chen spiegò che “DOS 1.0 non supportava le sottodirectory, le lettere minuscole o nomi di file più lunghi del formato 8.3.” Questa limitazione è anche l'insolita ragione per cui alcuni dei file di sistema più vecchi di Windows 11 conservano nomi risalenti all'epoca di DOS.

All'epoca, se un assembler chiedeva dove salvare il proprio output e l'utente desiderava una stampa, “si digitava ‘PRN’ come nome del file.” Digitando NUL l'output veniva eliminato, mentre CON lo visualizzava sullo schermo.

Poiché i dischi avevano una sola directory, non esisteva un altro luogo in cui questi nomi speciali potessero funzionare. Quando le cartelle arrivarono con DOS 2.0 nel 1983, i nomi dei dispositivi dovettero funzionare anche al loro interno. Come spiegò Chen, altrimenti gli utenti non avrebbero potuto passare a un'altra cartella, eseguire un assembler e digitare NUL per eliminarne l'output. MS fece quindi in modo che i nomi funzionassero in ogni cartella, ed è per questo che ancora oggi non è possibile creare un file denominato PRN nella cartella Documenti.

Perché MS non ha eliminato questo comportamento dopo più di 40 anni? “Perché tutti continuano a farvi affidamento,” scrisse Chen. I file batch sopprimono l'output reindirizzandolo a >NUL, gli script verificano l'esistenza di una cartella con “if exist directoryname\nul,” e le guide meno recenti indicano agli utenti di creare file con “copy CON.”

Se la regola venisse eliminata, ogni script che reindirizza l'output a NUL inizierebbe invece a scrivere file reali.

Un tempo questa regola causava l'arresto anomalo di interi PC. Windows 95 e Windows 98 rifiutavano i percorsi contenenti un nome di dispositivo, ma si bloccavano quando un percorso ne conteneva due, come C:\con\con. Il bollettino MS00-017 di MS del marzo 2000 riconosceva che ciò “di solito provoca un arresto anomalo.”

Ho testato la regola dell'era DOS su Windows 11 26H2 e NUL.txt è riuscito a passare

Su un PC con Windows 11 26H2, rinominando una nuova cartella in CON è apparso il messaggio “Il nome di dispositivo specificato non è valido.” Anche PRN, AUX, NUL e COM1 sono stati rifiutati.

Tuttavia, NUL.txt è stato accettato senza errori, così come CON.txt, nonostante la documentazione di MS continui ad affermare che NUL.txt è equivalente a NUL.

Folders renamed to CON.txt and NUL.txt despite MS documentation stating that this is not possible

Sebbene la documentazione di MS non sia stata aggiornata, nel 2022 gli sviluppatori che esaminavano il supporto di Windows in Python hanno osservato che Windows 11 aveva smesso di trattare come speciali i nomi di dispositivo con estensioni durante l'elaborazione dei percorsi dei file.

Sfortunatamente, tali file possono comportarsi in modo imprevedibile. Un utente di MS Q&A ha scoperto che PowerShell riusciva a elencare NUL.txt, ma non poteva né aprirlo né eliminarlo. Un consulente della community ha risposto che “il risultato potrebbe essere imprevedibile.” Ciò potrebbe spiegare perché MS continua ad affermare che le estensioni non influiscono su nomi come NUL.txt e CON.txt.

A developer reporting that a reserved file name with an extension cannot be parsed to the corresponding NT path

Il Prompt dei comandi può ancora dimostrare il vecchio comportamento di DOS. L'esecuzione di echo hello > CON ha visualizzato “hello” sullo schermo anziché creare un file, mentre echo test > COM¹ non è riuscito, esattamente come descritto nella documentazione di MS.

Prima di criticare Windows, vale la pena notare che nel 2024 i manutentori di Linux hanno rinominato il file di un driver grafico da aux.c a auxch.c, perché il nome originale impediva agli utenti di clonare il kernel Linux su Windows.

Windows può comunque essere criticato, perché Linux ha modificato il proprio codice per adattarsi a Windows, mentre Windows continua a conservare una regola del 1981 per script che potrebbero non essere stati modificati da decenni.

Windows 11 ha allentato la restrizione quanto basta per consentire NUL.txt, ma CON viene ancora trattato come un dispositivo anziché come un nome di file. Come il gestore heap di Windows 95 ancora incluso in Windows 11, è un altro componente legacy che MS non può rimuovere senza il rischio di compromettere il file batch trentennale di qualcuno.

Windows Latest dipende da lettori come te. Rendici la tua fonte preferita su Google Discover e Ricerca Google e aiutaci a far arrivare il nostro giornalismo indipendente a un maggior numero di persone.

VicinoBenvenuto in whokeys Accedi.

Non sei ancora registrato?   Iscriviti ora

Accedi con un account di terze parti:

  • google
  • Twitch
  • Youtube

VicinoBenvenuto su whokeys Registrati.

  • Indirizzo email *(Used To Receive Key)

    Inserisci una email valida.

  • Parola d'ordine*

    Da 6 a 16 lettere, numeri e caratteri speciali.

  • conferma password*

  • Nome di battesimo* Cognome*

  • Ho letto e accetto il 
    Iscriviti a whokeys Offerte, Concorsi Newsletter.

Hai già un account whokeys?   Registrati adesso

Accedi con un account di terze parti

  • google
  • Twitch
  • Youtube

Vicino

Richiesta:

Il programma è stato inviato con successo al sistema

Vicino

Richiesta:

Il programma è stato inviato con successo al sistema

Vicino

Richiesta:

Il sistema è occupato. Attendi e riprova.

VicinoRegistrazione riuscita

VicinoVerifica di sicurezza

Un nuovo articolo è stato aggiunto al tuo carrello.

Vicinometodo di spedizione

Spedire a:
Tassa di spedizione * Tempo di spedizione stimato Trackable Vettore
*Commissione stimata, l'importo effettivo viene calcolato durante il checkout.
0
Chat dal vivo