Eu tive a coisa que aconteceu comigo nos últimos dias com um programa que eu escrevi. Um dos arquivos de configuração xml estava sendo alterado toda vez que o programa era iniciado. Descobri que, se eu substituísse o arquivo pela versão correta e, em seguida, o configurasse como somente leitura, o arquivo não seria sobrescrito e o programa funcionaria.
Eu não sei exatamente porque o arquivo foi sobrescrito. No entanto, eu tenho uma teoria. Não acredito que seja um vírus no meu computador. No meu programa, o código verifica um site toda vez que ele é iniciado. Acredito que o site foi invadido e estava enviando de volta códigos maliciosos que estavam sobrescrevendo o xml. Descobri que, se o meu computador não estivesse conectado à internet, o arquivo não seria sobrescrito. Então, minha solução foi marcar o arquivo como somente leitura por enquanto, e também investigar se o site foi invadido, já que pode ser a verdadeira fonte do problema.