O aplicativo C # não pode ler / gravar em arquivos criados pelo administrador quando executado em uma conta de usuário limitada XP

Tenho um aplicativo que pode ser usado por todos os usuários (administrador ou limitado) no .NET (C # especificamente

Quando o aplicativo é iniciado pela primeira vez - ele cria alguns arquivos necessários em C: \ Documents and Settings \ All Users \ Documents \ para todos os lançamentos subsequente

Se o usuário limitado no XP for o PRIMEIRO usuário a iniciar o aplicativo, ele criará os arquivos corretamente e o usuário limitado e os administradores poderão executar corretament

No entanto, se o administrador (ou estou supondo um usuário limitado diferente) for o primeiro a iniciar o aplicativo, o usuário limitado NÃO poderá executá-l

Os dois arquivos nos quais NÃO é possível ler / gravar, se criados por um Administrador, são um arquivo de log Log4Net e um arquivo SQLite d

O arquivo de banco de dados SQLite está sendo criado com um .NET File.Copy simples (caminho de origem, caminho de destino). O caminho de origem é um arquivo de banco de dados de sementes instalado com o aplicativo; portanto, primeiro execute-o, copiando-o de C: \ Arquivos de Programas \ app install \ seed.db

Existe uma maneira de definir as permissões no arquivo quando eu o copio? File.SetAccessControl () talvez? Não sei como isso funciona.

A outra questão é que o aplicativo de arquivo rolante log4Net não rolará o arquivo antigo e criará um novo, pois o arquivo antigo foi criado pelo usuário administrador quando o aplicativo foi executado.

Alguma ideia? Ironicamente, tudo isso funciona perfeitamente no Vista com contas limitadas / administrativas - isso só acontece no XP com contas limitadas / administrativa

questionAnswers(2)

yourAnswerToTheQuestion