vg-excel-gest Posted July 4, 2012 Report Share Posted July 4, 2012 Olá pessoal, Tenho uma aplicação que necessita criar uma pasta com uns ficheiros Excel e decidi cria-la no directório c:\windows\.... , no w xp funciona perfeitamente mas no w7 não, não me deixa ter acesso e não executa o comando mkdir, pelo que já pesquisei necessitava executar o Excel como administrador ou qualquer coisa do género!!! Alguém me pode ajudar? Link to comment Share on other sites More sharing options...
jpaulino Posted July 4, 2012 Report Share Posted July 4, 2012 decidi cria-la no directório c:\windows\ Efectivamente precisa de acesso como administrador, mas porque não criar em c:\users\<username>\ ... ? Link to comment Share on other sites More sharing options...
vg-excel-gest Posted July 5, 2012 Author Report Share Posted July 5, 2012 Ora bem, porque essa pasta é oculta e contem uns ficheiros necessários ao funcionamento da aplicação e queria cria-la num endereço o menos acessível e escondida possível do usuário, a aplicação irá extrair informação desses ficheiros sem que o usuário se aperceba disso, também há a questão da aplicação poder trabalhar num pc algures no mundo e achei que a pasta do Windows seria a mais comum em todos os pcs com o Windows instalado. Quando testei em w7 é que deparei com esta barreira, gostaria de saber quais as alternativas que poderei seguir para além da já sugerida pelo Paulino tendo em conta a logica descrita. Link to comment Share on other sites More sharing options...
jpaulino Posted July 5, 2012 Report Share Posted July 5, 2012 Penso que irás ter sempre problemas com utilizadores que não têm (e nunca terão) acesso a escrever na pasta "windows". O mesmo acontece com o registry. Tipicamente os settings da aplicação (penso que é isso que queres guardar) são colocados em C:\Users\<utilizador>\AppData\Local (que é uma pasta escondida) e que podes ir buscar com a função environ(). Link to comment Share on other sites More sharing options...
vg-excel-gest Posted July 5, 2012 Author Report Share Posted July 5, 2012 Boas, É isso mesmo, não sabia destas pastas, não necessito da função environ() já tenho uma função que me retorna o nome do utilizador, o que espero é que este endereço seja comum mundialmente a todos os pcs com windows. Se der certo retorno feedback, obrigado. Link to comment Share on other sites More sharing options...
vg-excel-gest Posted July 11, 2012 Author Report Share Posted July 11, 2012 Bom dia, O problema foi resolvido de forma muito fácil e simples, o que eu necessitava era cada vez que a aplicação fosse instalada num pc algures no mundo teriam de ser gravada uma informação +- os settings da aplicação como o Paulino referiu numa pasta oculta e escondida do pc. A aplicação necessita de criar essa pasta via vba num endereço comum em qualquer pc, tarefa quase impossível, o Paulino sugeriu e bem o endereço, C:\Users\<utilizador>\AppData\Local mas este endereço difere na primeira pasta nas diferentes versões do windows, foi então que depois de uma curta pesquisa indo de encontro à ideia do Paulino que descobri a forma de ser retornado o endereço em cada pc correctamente sem falhas, de uma forma muito simples e directa com este código: Application.StartupPath Link to comment Share on other sites More sharing options...
jpaulino Posted July 11, 2012 Report Share Posted July 11, 2012 Environ("LOCALAPPDATA") devolve sempre a pasta correcta, independentemente da versão do Windows 😉 Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now