Como posso excluir a tais?
A instrução Kill exclui os arquivos de um disco.
Sintaxe: Kill pathname
O argumento pathname é uma expressão de seqüência de caracteres que especifica um ou mais nomes de arquivo a serem excluídos. O pathname pode incluir o diretório ou pasta e a unidade.
No Microsoft Windows, Kill aceita o uso de curingas de múltiplos caracteres (*) e de um único caractere (?) para especificar múltiplos arquivos. Entretanto, no Macintosh, esses caracteres são tratados como caracteres de nomes de arquivo válidos e não podem ser usados como curingas para especificar múltiplos arquivos.
Como o Macintosh não aceita os curingas, use o tipo de arquivo para identificar grupos de arquivos a excluir. Você pode usar a função MacID para especificar o tipo de arquivo em vez de repetir o comando com nomes de arquivo separados. Por exemplo, a instrução a seguir exclui todos os arquivos TEXT da pasta atual.
Kill MacID ("TEXT")
Se você usar a função MacID com Kill no Microsoft Windows, ocorrerá um erro. Se você tentar usar Kill para excluir um arquivo aberto, ocorrerá um erro.
Você pode deletar vários arquivos em um diretório
Estou tentando apagar arquivos temporários que o MS Word às vezes deixa para trás, quando não os consegue limpar corretamente.
Digamos os arquivos como ~$lename.dot. Utilizar apenas o comando Kill, não funciona para arquivos ocultos como estes. mas, se eu mudar seus atributos ele funciona perfeitamente.
Existe uma comando que pode matar arquivos ocultos também? Se não, como posso contornar uma situação como este problema que impede alguns modelos mailmerge de serem excluídos?
Como quero executar o comando fora de um botão. Estou pegando o caminho de um DLookup, pois varia de local para local.
Function KillTempFiles()
If Dir(DLookup("[Path]", "tblMailmerge", "mID=1") & "~*.dot") > "" Then
Kill (DLookup("[Path]", "tblMailmerge", "mID=1") & "~*.dot")
End If
On Error Resume Next
End Function
No entanto, a declaração Kill não pode excluir arquivos somente leitura, por isso, a menos que não exista chance de que o arquivo possa ser marcado como readonly, deve-se primeiro remover o atributo readonly do arquivo. Pode fazer isso da seguinte forma:
Dim KillFile As StringLet KillFile = "c:\bernardes\inanyplace.doc"
' Checa se o arquivo existeIf Len(Dir$(KillFile)) > 0 Then' Primeiro remove o atributo de readonly, caso esteja assim configuradoSetAttr KillFile, vbNormal' Deleta o aqruivo.Kill KillFileEnd If
Para deletar todos os arquivos em um diretório:
' Faz um Loop através de todos os arquivos em um diretório por usar a função Dir$
Dim MyFile As String
Let MyFile = Dir$ ("c:\Bernardes\*.*")
Do While MyFile <> ""
KillProperly "c:\Bernardes\" & MyFile
' É necessário especificar o caminho novamente, porque o arquivo foi deletado.
Let MyFile = Dir$ ("c:\Bernardes\*.*")
Loop
Alternativamente, você pode ler todos os valores em uma matriz, e excluir todos os arquivos usando um loop. Esse será um processo mais rápido se o diretório for muito grande, caso contrário não notará qualquer diferença.
Referências: StackoverFlow
Tags:
Access, Kill, Delete, Del, Excluir, deletar, apagar, arquivo, file, archive
André Luiz Bernardes
A&A® - Work smart, not hard.
Nenhum comentário:
Postar um comentário