Como você alterar permissões de arquivo para parar Vista de escrever para um arquivo no diretório VirtualStore?
-
20-08-2019 - |
Pergunta
Quando o meu programa instala primeiro ele coloca um arquivo no diretório AppData do usuário, eo programa, em seguida, periodicamente escrever para esse arquivo. O problema está em Vista as gravações não são feitas para o arquivo no diretório AppData do usuário, eles são feitos para uma cópia desse arquivo no diretório “VirtualStore / ProgramData”. O arquivo original no diretório AppData do usuário nunca é alterado, parece quando o programa é executado ele só tem acesso ao arquivo dentro do diretório VirtualStore.
Existe uma maneira de dentro de um aplicativo C # para alterar as permissões nesse arquivo para que meu programa vai escrever para o original no diretório AppData e não aquele no diretório VirtualStore?
Obrigado,
Jeff
Solução
A documentação UAC em http://msdn.microsoft.com/en -us / library / bb756973.aspx deve ajudá-lo a resolver isso.
Parece-me que você precisa adicionar um manifesto de aplicativo.
Quando o aplicativo inclui um manifesto de aplicativo com um valor "requestedExecutionLevel" especificado, a virtualização do sistema de registro e arquivos do Vista será desligado.
Dê uma olhada http://msdn.microsoft.com/en -us / library / bb756929.aspx para fins específicos.
Se você ainda não tiver testado sua aplicação em condições não-administrador, você pode achar que você precisa fazer algumas alterações no código depois de desligar a virtualização do Vista.