
O Windows 11 permite que arquivos tenham nomes de 200 caracteres, repletos de espaços e emojis, mas o Explorador de Arquivos se recusará a nomear um arquivo ou uma pasta como CON. CON, PRN, AUX, NUL, COM1 a COM9 e LPT1 a LPT9 são nomes de dispositivos reservados. O engenheiro da MS Raymond Chen atribui sua origem ao DOS 1.0, uma versão que nem sequer oferecia suporte a pastas.
Testei a regra em um PC com o Windows 11 26H2. A restrição introduzida pelo sistema operacional de 1981 continua firmemente em vigor, embora o Windows Latest tenha descoberto que parte dela já não funciona como descrito na documentação da MS.

CON, PRN, AUX e NUL são dispositivos, não nomes de arquivos, no Windows 11
Cada nome reservado corresponde a um dispositivo. NUL é particularmente notável: ele funciona como um buraco negro que descarta tudo o que é enviado para ele.
A documentação da MS sobre nomenclatura de arquivos ainda instrui os desenvolvedores: “Não use os seguintes nomes reservados como nome de um arquivo.” As restrições também se aplicam a pastas, pois o Windows trata uma pasta como um tipo especial de arquivo.

Segundo a MS, adicionar uma extensão não deveria contornar a restrição, embora isso aconteça em alguns casos. A empresa afirma: “NUL.txt e NUL.tar.gz são ambos equivalentes a NUL.” Nem mesmo os algarismos sobrescritos estão isentos. O Windows interpreta ¹, ² e ³ como algarismos, o que significa que nomes como COM¹ e LPT³ são reservados “em todos os diretórios.”
Em termos de arquitetura, COM1 é um link para a porta serial dentro do kernel do Windows. A MS o chama de nome de dispositivo do MS-DOS, portanto, inserir COM1 acessa a porta, e não um arquivo.
Raymond Chen explica por que uma regra do DOS 1.0 continua ativa no Windows 11
A história começa com o CP/M, o sistema operacional com o qual o MS-DOS buscava manter compatibilidade. No CP/M, os nomes de dispositivos sempre incluíam dois-pontos, como CON:. O MS-DOS tornou os dois-pontos opcionais, uma decisão que Michal Necasek, do OS/2 Museum, chama de “falha fatal.” Um nome simples como CON não dá ao DOS nenhuma indicação de que se refere a um arquivo ou ao console.

Em uma publicação de 2003 em seu blog Old New Thing, Chen explicou que “o DOS 1.0 não oferecia suporte a subdiretórios, letras minúsculas ou nomes de arquivos maiores que 8.3.” Essa limitação também é o motivo incomum pelo qual alguns dos arquivos de sistema mais antigos do Windows 11 mantêm nomes da era do DOS.
Naquela época, se um montador perguntasse onde salvar sua saída e o usuário quisesse uma versão impressa, “você digitava ‘PRN’ como nome do arquivo.” Inserir NUL descartava a saída, enquanto CON a exibia na tela.
Como os discos tinham apenas um diretório, não havia outro local onde esses nomes especiais pudessem funcionar. Quando as pastas chegaram com o DOS 2.0, em 1983, os nomes de dispositivos também precisaram funcionar dentro delas. Como Chen explicou, caso contrário, os usuários não poderiam mudar para outra pasta, executar um montador e inserir NUL para descartar sua saída. Por isso, a MS fez com que os nomes funcionassem em todas as pastas, razão pela qual ainda hoje não é possível criar um arquivo chamado PRN na pasta Documentos.
Por que a MS não eliminou esse comportamento após mais de 40 anos? “Porque todos ainda dependem deles”, escreveu Chen. Arquivos em lote suprimem a saída redirecionando-a para >NUL, scripts verificam se uma pasta existe com “if exist directoryname\nul” e guias antigos instruem os usuários a criar arquivos com “copy CON.”
Se a regra fosse removida, todos os scripts que redirecionam a saída para NUL começariam a gravar arquivos reais.
Essa regra já chegou a fazer PCs inteiros travarem. O Windows 95 e o Windows 98 rejeitavam caminhos contendo um nome de dispositivo, mas falhavam quando um caminho continha dois, como C:\con\con. O boletim MS00-017 da MS, de março de 2000, reconheceu que isso “geralmente resulta em uma falha do sistema.”
Testei a regra da era do DOS no Windows 11 26H2, e NUL.txt passou pela restrição
Em um PC com o Windows 11 26H2, renomear uma nova pasta para CON produziu a mensagem “O nome de dispositivo especificado é inválido.” PRN, AUX, NUL e COM1 também foram rejeitados.
No entanto, NUL.txt foi aceito sem apresentar erro, assim como CON.txt, embora a documentação da MS ainda afirme que NUL.txt é equivalente a NUL.

Embora a documentação da MS não tenha sido atualizada, desenvolvedores que analisaram o suporte do Python ao Windows observaram, em 2022, que o Windows 11 havia deixado de tratar nomes de dispositivos com extensões como especiais durante o processamento de caminhos de arquivos.
Infelizmente, esses arquivos podem se comportar de maneira imprevisível. Um usuário do MS Q&A descobriu que o PowerShell conseguia listar NUL.txt, mas não conseguia abri-lo nem excluí-lo. Um consultor da comunidade respondeu que “o resultado pode ser imprevisível.” Isso pode explicar por que a MS continua afirmando que as extensões não afetam nomes como NUL.txt e CON.txt.

O Prompt de Comando ainda consegue demonstrar o antigo comportamento do DOS. Executar echo hello > CON exibiu “hello” na tela em vez de criar um arquivo, enquanto echo test > COM¹ falhou exatamente como descrito na documentação da MS.
Antes de criticar o Windows, vale observar que, em 2024, os mantenedores do Linux renomearam um arquivo de driver gráfico de aux.c para auxch.c, pois o nome original impedia que os usuários clonassem o kernel do Linux no Windows.
No entanto, o Windows ainda pode ser criticado, pois o Linux alterou seu código para se adaptar ao Windows, enquanto o Windows continua preservando uma regra de 1981 para scripts que talvez não sejam modificados há décadas.
O Windows 11 flexibilizou a restrição o suficiente para permitir NUL.txt, mas CON ainda é tratado como um dispositivo, e não como um nome de arquivo. Assim como o gerenciador de heap do Windows 95 que ainda acompanha o Windows 11, esse é mais um componente legado que a MS não pode remover sem o risco de interromper o arquivo em lote de 30 anos de alguém.
O Windows Latest depende de leitores como você. Torne-nos sua fonte preferida no Google Discover e na Pesquisa Google e ajude nosso jornalismo independente a alcançar mais pessoas.

