Pergunta

Eu tenho uma dúvida em licenciamento. Eu estou usando C # aplicação. Cenário: O usuário recebe a licença para a aplicação através de correio na forma de arquivo. Ele / Ela armazena o arquivo de licença na área de trabalho. Mais tarde, ele / ela escolhe o registo de licença e clique. Agora, o aplicativo é registrado (licenciado). Depois de alguns dias, se o usuário exclui o arquivo de licença da Área de Trabalho. O aplicativo irá parar de funcionar uma vez que não há nenhum arquivo. Eu quero armazenar os detalhes da licença em algum lugar no Registro ou arquivo (caminho secreto). Mas E se essa conta de usuário não tem permissão suficiente para ler / Registro de gravação ou arquivo. Qual é o bom caminho? Vocês sabem qualquer outro método? Sou novato nesta área. Então, por favor me ajude.

Agradecemos antecipadamente.

Foi útil?

Solução

Todos os dados de aplicativo deve ser armazenado na pasta% AppData% diretório.

Uma vez que você especificou C #, aqui está o código para obter a pasta:

Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);

A saída será no seguinte local: No XP: C: Documents / and Settings / nome de usuário / Application Data / No Vista: C: / Users / nome de usuário / AppData / Roaming

Eu recomendo que você crie uma pasta no diretório para a sua aplicação e copiar lá.

Outras dicas

Microsoft tem algumas sugestões para locais de armazenamento no Windows Vista:. Certificação Aplicação e compatibilidade de documentos

Assim, dados se ele [o programa] está sempre mudando compartilhada (não CODE), então ele [os dados] devem logicamente ir para a pasta ProgramData. Se for dados individuais, então ele pode ir para o perfil do usuário.

Nós usamos um arquivo de licença e armazená-lo na pasta ProgramData \ CompanyName. Mas nossas licenças são em uma base por máquina, não um por usuário. Por padrão, essa pasta está oculta no Windows, mas não é protegido por UAC.

Como alguém me disse há algum tempo: "O registro é para a interação da aplicação com o sistema, não para a interação da aplicação com o usuário." Eu não sei se este é o caminho certo para ver as coisas. I utilizado para armazenar informações do usuário no registro também, mas não mais. Colocar as configurações em um arquivo é o melhor caminho. Se você deseja armazenar coisas como números de série não se esqueça de cripta-los.

Absolutamente, escrita para o registro provavelmente deve ser evitado neste caso, especialmente se a licença pode ser excluído, adicionados ou alterados na forma como você parece estar descrevendo. Se as licenças é feito para ser trocado ou mudado de alguma forma após a instalação, pode ser melhor para escrevê-lo em um arquivo. Embora, eu geralmente não recomendo escrever qualquer tipo de arquivo crítico ou dados como esse para o desktop. Eu provavelmente escrevê-lo para uma pasta contida dentro de um diretório do próprio aplicativo. Incluí-lo em sua instalação do aplicativo se ele é que necessário.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top