Erro 70 no tempo de execução no VB6: permissão negada
Definição
Erro 70 em tempo de execução é um problema de segurança ou permissões. A mensagem em si é uma das mensagens de erro mais ocultas que o usuário pode ver quando o programa é executado, já que a única mensagem recebida é "Permissão negada". Esse erro pode ser difícil de diagnosticar, especialmente em programas grandes que possuem muitos componentes executados ao mesmo tempo. A mensagem em si implica que o programa não tem a autoridade correta para usar um recurso que não está integrado ao programa.
Causas
Esse erro geralmente ocorre quando o programa tenta acessar arquivos ou ferramentas que não têm as permissões apropriadas, como gravar documentos protegidos ou componentes de software do modelo de objeto e componente. No entanto, há muitas outras situações em que o erro pode aparecer, muitas das quais estão relacionadas a objetos COM e DCOM, como ter essas opções desativadas, usá-las para acessar domínios que não são confiáveis ou quando um deles causa um evento que seu programa deve manipular.
Resolução
Muitas vezes você só descobrirá erros de execução depois que um programa os apresentar. Como esse erro geralmente é causado pela falta de acesso a arquivos externos ao programa, o que você precisa saber é quais funções ou componentes do programa não conseguem acessar esses recursos e, portanto, causar problemas. Isso ajudará você a indicar quais recursos estão bloqueados, para que você possa diagnosticar e resolver o problema. Em muitos casos, você pode corrigir o erro concedendo acesso de usuário a ferramentas, como o aplicativo de servidor DCOM ou o Microsoft Transaction Server.
Prevenção
Ao projetar seu programa Visual Basic 6, você pode escrever código para interceptar e controlar o erro de runtime 70. Use a instrução do Visual Basic "On Error" ao escrever um código que pode resultar nesse erro (ou qualquer outro). Quando o programa tenta lançar o erro, o código do driver de erro o pega, o que lhe permite decidir como você deseja que o seu programa responda. Um exemplo é informar aos usuários com mais detalhes o que deu errado ou permitir que o programa continue sem parar.