ARQUIVOS TEMP

NEREU1301 06/08/2009 10:02:03
#319087
Bom dia
Peço calma ao iceman e patoloco. levantaram um otimo assunto mas foram muito rápidos. logo encerraram o tópico.
baixei o arquivo do iceman, mas infelizemente nao funcionou.
quando anexo o filelistbox ao projeto ele ja vem com todos os itens do projeto e nao só os .temp e caso clicado no eliminar temp elimina todos e nao só os temp.
To fazendo algo errado:
Public Sub DelTmp(ByVal FLLSTBX As FileListBox, ByVal Oleopl As String)
[ô][ô]Elimina os arq temporarios que sao criados pelo datareport
FLLSTBX.Path = Oleopl
On Error GoTo erroTEMP
For qqu = 0 To FLLSTBX.ListCount - 1
FLLSTBX.ListIndex = qqu
If Right(Oleopl, 1) = [Ô][Ô] Then
Kill Oleopl & FLLSTBX.FileName
Else
Kill Oleopl & [Ô][Ô] & FLLSTBX.FileName
End If
Next
Exit Sub
erroTEMP:
qqu = qqu + 1
Resume Next
End Sub


Private Sub CmdLimpTemp_Click()
DelTmp Me.File1, App.Path
End Sub

Private Sub Form_Load()
File1.Path = App.Path
End Sub


Se puderem ma ajudar agradeço
nereu
WEBMASTER 06/08/2009 11:13:28
#319095
Voce nao precisa de componentes visuais (filelistbox) para uma tarefa tao simples.
Veja este exemplo:


Option Explicit

Sub teste()
Call ExcluirTMP(Environ([Ô]TEMP[Ô]))
End Sub

Private Sub ExcluirTMP(sPath As String)
Dim FSO As Object
Dim FIL As Object
Dim COL As New Collection
Dim C As Integer

Set FSO = CreateObject([Ô]Scripting.FileSystemObject[Ô])
If FSO.FolderExists(sPath) = False Then Exit Sub

For Each FIL In FSO.GetFolder(sPath).Files
If LCase(Right(FIL.Name, 4)) = [Ô].tmp[Ô] Then COL.Add FIL.Path
Next

If COL.Count > 0 Then
For C = 1 To COL.Count
[ô]pode haver erros de permissao !!!
On Error Resume Next
Kill COL.Item(C)
Next
End If
End Sub


NEREU1301 06/08/2009 11:26:48
#319100
blz webmaster
Mas eu declaro num modulo, primeiro form ou num novo form?
Nereu
WEBMASTER 06/08/2009 12:00:09
#319114
Voce coloca isso em um form por exemplo e chama a rotina ExcluirTMP por exemplo no load de seu form, ou ainda no clique de um button
NEREU1301 06/08/2009 13:37:42
#319120
WebMaster
coloquei a sub ExcluirTmp dentro de um form e no load desse mesmo form coloquei conf abaixo
Private Sub Form_Load()
Dim cod As Long
Call ExcluirTMP(Environ([Ô]TEMP[Ô]))
[ô]chama a sub para acesso
Acesso
If rsSelecao.RecordCount = 0 Then
cod = [Ô]00001[Ô]
Else
rsSelecao.MoveLast
cod = rsSelecao([Ô]Numero_OS[Ô]) + 1
End If
TxtNumOS.Text = cod
End Sub

entro no programa e saio e os temp nao sao escluidos. onde to errando????
WEBMASTER 06/08/2009 14:36:07
#319126
Call ExcluirTMP(Environ([Ô]TEMP[Ô]))

PARA

Call ExcluirTMP(App.Path)


???
MASTER2020 06/08/2009 20:59:47
#319148
Ola nereu o ultimo q iceman postou funcionou quizer testar

http://www.vbmania.com.br/pages/index.php?varModulo=Forum&varMethod=Abrir&varID=319040&varWorld=
NEREU1301 06/08/2009 21:20:06
#319151
valeu patoloco
eu baixei o procedimento do iceman
mas só que ele me traz tudo o que estiver na pasta do meu projeto e nao só os .temp eu devo ta errando em algum lugar
abaixo tem meu proc se vc puder dar uma olhada onde errei
te agradeço

Public Sub DelTmp(ByVal FLLSTBX As FileListBox, ByVal Oleoplan As String)
[ô][ô]Elimina os arq temporarios que sao criados pelo datareport
FLLSTBX.Path = Oleoplan
On Error GoTo erroTEMP
For qqu = 0 To FLLSTBX.ListCount - 1
FLLSTBX.ListIndex = qqu
If Right(Oleoplan, 1) = [Ô][Ô] Then
Kill Oleoplan & FLLSTBX.FileName
Else
Kill Oleoplan & [Ô][Ô] & FLLSTBX.FileName
End If
Next
Exit Sub
erroTEMP:
qqu = qqu + 1
Resume Next
End Sub


Private Sub CmdLimpTemp_Click()
DelTmp Me.File1, App.Path
End Sub

Private Sub Form_Load()
File1.Path = App.Path
End Sub
NEREU1301 06/08/2009 21:28:10
#319152
webMaster
fiz a alteraçao e funcionou blz
muito obrigado

Vou testar tambem o exemplo do patoloco pra adquirir mais conhecimento e tentar chegar perto dos mestres ai.

valeu
abraços
Nereu
Tópico encerrado , respostas não são mais permitidas