USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  copiar arquivo
Alessandro
SÃO GONÇALO
RJ - BRASIL
ENUNCIADA !
Postada em 07/12/2004 11:07 hs         
Pessoal,
 
eu tenho a seguinte necessidade: preciso copiar um arquivo local para a rede, porém o meu arquivo local ainda está aberto e com isso eu não posso usar o comando FileCopy do VB, pois dá "Permission denied" por causa que o arquivo ainda está aberto.
Eu achei nesse site a API "SHFileOperation". Ela tem a mesma função do fileCopy, porém consegue copiar o arquivo, mesmo que o arquivo a ser copiado esteja aberto. O único problema que eu tenho com essa API, é que se o arquivo p/ onde estou copiando já existir o Windows pergunta se quer substituir o arquivo existente. 
Como eu faço via API para substituir o arquivo sem que o Windows faça essa pergunta?
OBS: Estou usando o VB 5.
 
desde já agradeço,
 
Alessandro Araujo
   
Roßerto
Pontos: 2843 Pontos: 2843 Pontos: 2843 Pontos: 2843 Pontos: 2843
SAO PAULO
SP - BRASIL
Postada em 07/12/2004 13:31 hs            
uma outra alternativa é criar um arquivo BAT, e chamar esse arquivo para fazer
a copia, mesma estando em uso o arquivo é realizado a copia e se existir o
arquivo, o arquivo é sobregravado.
 
Roberto
     
Ismael_CPD
SAO PAULO
SP - BRASIL
Postada em 07/12/2004 13:32 hs            
Cara se vc não for precisar mais do arquivo que será sobreposto, vc pode deleta-lo ou  move-lo antes de fazer a copia do novo arquivo.
     
Fabio-RSC
NITEROI
RJ - BRASIL
Postada em 08/12/2004 13:13 hs         
Alessandro,
Esta função, vc tem que utilizar passando uma estrutura do tipo abaixo para que ela funcione corretamente.
Public Type SHFILEOPSTRUCT
  hwnd As Long
  wFunc As Long
  pFrom As String
  pTo As String
  fFlags As Integer
  fAnyOperationsAborted As Boolean
  hNameMappings As Long
  lpszProgressTitle As String
End Type
Abaixo estão aguns valores e suas consequencias caso vc adicione estes valores no item fFlags da estrutura acima.
&H100            '  Não mostra os arqs que estão sendo copiados na tela de progresso.
&H4              '  Não mostra a tela de progresso de cópia de arquivos.
&H8              '  Renomeia o arq copiado para ("Cópia de " + XXX.Ext)caso já exista.
&H200            '  Não pede confirmação para criação de diretórios.
&H10             '  Não pede confirmação de substituição do arquivo para o usuário.
 
Desta forma, para utilizar a função SHFileOperation sem pedir a confirmação de substituição:
Dim Estrut as SHFILEOPSTRUCT
Estrut.fFlags= &H10
SHFileOperation(Estrut)
PS: Existem outros parâmetros que não sei pra que servem.
     
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2025   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página