Você pode simplesmente fornecer uma linha de comando inválida:
c:\>chkdsk FailPlease
The drive, the path, or the file name is not valid.
c:\>echo %ERRORLEVEL%
3
Estou escrevendo um utilitário de linha de negócios que, entre outras tarefas, executará o chkdsk.exe no modo somente leitura em discos rígidos de dados secundários do NTFS. Para testar completamente meu utilitário, preciso induzir um estado em um desses discos, que o chkdsk detectará como um erro ... de preferência de uma maneira que não destrua os dados existentes no disco. Qual é a maneira mais fácil de fazer isso?
Editar:
Idealmente, gostaria de criar um arquivo de texto fictício em uma dessas unidades e, depois, desordenar esse arquivo de forma que o chkdsk ache que ele precisa ser corrigido. Não tenho certeza de como desordenar um arquivo.
Você pode simplesmente fornecer uma linha de comando inválida:
c:\>chkdsk FailPlease
The drive, the path, or the file name is not valid.
c:\>echo %ERRORLEVEL%
3
Eu acho que você quer algo que possa montar sistema de arquivos como uma unidade de um estado corrompido (ou pseudo-corrompido). A primeira coisa que me vem à mente é TrueCrypt
chkdsk
retorne diferente de zero. Agora, seu script pode fazer uma cópia da imagem, montar a cópia, permitir que o chkdsk tente consertar e, em seguida, desfaça sua imagem.