PERMISSION DENIED

VERONICA 03/06/2013 21:14:37
#424355
Olá,
Estou tentando criar um relatório em um arquivo PDF no meu sistema seguindo o tutorial do link:

http://www.vb6.us/tutorials/visual-basic-tutorial-pdf

(coloquei o pdf em anexo também)

Segui o tutorial, mas quando executo o Programa da o seguinte erro:
[txt-size=2][txt-color=#e80000]
[Ô] Run-timer error [ô]70[ô]:[/txt-size]

Permission denied [Ô][/txt-color]

Se clico em Debug o programa me mostra essa parte do código destacando a linha em negrito como local do erro (esse código foi extraído do tutorial que mencionei acima) :

[txt-color=#0000f0]Private Function PDFScanRepAdobe(sPathBegin As String, iIndexFolder As Long) As Boolean

Dim Fso As Object
Dim oRep As Object
Dim oSubRep As Object
Dim oFolder As Object
Dim oFiles As Object

Set Fso = CreateObject([Ô]Scripting.FileSystemObject[Ô])
Set oRep = Fso.GetFolder(sPathBegin)

For Each oFolder In oRep.SubFolders
iIndexFolder = iIndexFolder + 1

If oFolder.Attributes <> 22 Then
For Each oFiles In oFolder.Files
If InStr(1, oFiles.Path, [Ô]AcroRd32.exe[Ô]) <> 0 Then
wsPathAdobe = oFiles.Path
bScanAdobe = True
Exit For
End If
Next oFiles
End If

If bScanAdobe = True Then Exit For
Next oFolder

For Each oSubRep In oRep.SubFolders
If bScanAdobe = True Then Exit For
PDFScanRepAdobe oSubRep.Path, iIndexFolder
Next oSubRep

Set Fso = Nothing
If bScanAdobe = True Then Exit Function

End Function[/txt-color]



Preciso muito gerar esses Relatórios em PDF, se alguém souber como resolver esse problema ou outro modo de criar PDF no VB vai me ajudar muitooo.

Desde de já agradeço a atenção

Att,
Verônica

MARCELO.TREZE 04/06/2013 08:54:42
#424363
Colega o que deve estar acontecendo é que o arquivo está sendo executado e você tenta acessa-lo novamente o que dá permissão negada.

pergunta seus relatórios possuem imagem ou apenas texto?
SOCRAMSA 04/06/2013 12:09:12
#424371
Acontece isso comigo sempre no windows 7

O que faço e resolve

CLIQUE EM INICIAR
PAINEL DE CONTROLE
EM CIMA CLIQUE PARA PESQUISAR
UAC
ALTERAR CONFIGURAÇÕES DE CONTROLE DE CONTA DE USUÁRIO
CLIQUE 1 VEZ EM CIMA DESSA OPÇÃO

em DEFINA QUANDO VOCE DEVERA SER NOTIFICADO.....................
DESÇA ATé O FINAL

nunca me notificar

Isso resolve em casos que o VB é executado em WINDOWS 7/8
VERONICA 04/06/2013 17:39:01
#424387
Citação:

:
Colega o que deve estar acontecendo é que o arquivo está sendo executado e você tenta acessa-lo novamente o que dá permissão negada.

pergunta seus relatórios possuem imagem ou apenas texto?



Estou tentando criar o arquivo pdf apenas com texto inicialmente só pra fazer funcionar.
VERONICA 04/06/2013 22:27:38
#424398
Citação:

:
Acontece isso comigo sempre no windows 7

O que faço e resolve

CLIQUE EM INICIAR
PAINEL DE CONTROLE
EM CIMA CLIQUE PARA PESQUISAR
UAC
ALTERAR CONFIGURAÇÕES DE CONTROLE DE CONTA DE USUÁRIO
CLIQUE 1 VEZ EM CIMA DESSA OPÇÃO

em DEFINA QUANDO VOCE DEVERA SER NOTIFICADO.....................
DESÇA ATé O FINAL

nunca me notificar

Isso resolve em casos que o VB é executado em WINDOWS 7/8




Isso não funcionou.
SOCRAMSA 05/06/2013 04:50:04
#424400
Aqui nos meus casos (sem atualização automatica)

Maquinas que tenham atualização automatica, anulam o efeito do UAC, ou seja, quando atualiza as configurações de segurança, são habilitadas novamente

OU seja voce desce até o nivel inferior e atualização automatica, volta ao estado normal (causador do access denied)
OCELOT 05/06/2013 11:56:15
#424410
Se o programa funciona sem o UAC então existe uma grande chance de você estar fazendo o que não deve.

No caso do erro de permission denied pode ser que você esteja tentando listar os arquivos de alguma pasta que o usuário não tem permissão para ler ou listar arquivos, no caso o que deveria ser feito é tratar o erro e passar para a próxima pasta.
VERONICA 06/06/2013 23:10:41
#424455
Citação:

:
Se o programa funciona sem o UAC então existe uma grande chance de você estar fazendo o que não deve.

No caso do erro de permission denied pode ser que você esteja tentando listar os arquivos de alguma pasta que o usuário não tem permissão para ler ou listar arquivos, no caso o que deveria ser feito é tratar o erro e passar para a próxima pasta.



Olá
Como resolver esse problema? Pode ser isso mesmo, meu sistema fica localizado no C:\, mas estou na conta de administrador, esse erro pode ocorrer mesmo nesse caso?
OCELOT 07/06/2013 10:15:03
#424459
Não trabalho com VB a muito tempo, mas acho que seria algo assim, segue apenas o trecho do seu foreach

    For Each oFolder In oRep.SubFolders
iIndexFolder = iIndexFolder + 1

If oFolder.Attributes <> 22 Then
[ô]Ativa o tratamento de erros
On Error Goto PulaPasta
For Each oFiles In oFolder.Files
If InStr(1, oFiles.Path, [Ô]AcroRd32.exe[Ô]) <> 0 Then
wsPathAdobe = oFiles.Path
bScanAdobe = True
Exit For
End If
Next oFiles
[ô]Se der erro ao tentar ler os arquivos da pasta ele vai pular para este ponto, indo assim para a próxima pasta
PulaPasta:
End If

[ô]Desativa o tratamento de erros
On Error Goto 0

If bScanAdobe = True Then Exit For
Next oFolder


Lembrando que é só um trecho do código, você precisa colocar o resto, e como não testei não tenho certeza se está correto. é bom também você rodar ele passo a passo para ter certeza que está verificando os arquivos e pulando apenas as pastas que não consegue ler.
Faça seu login para responder