Je voudrais faire une copie de fichier dans un programme VB. Pour cela
j'utilise la fonction FileCopy de la manière suivante:
fichier_destination = repertoire & "fic1.dbf"
fichier_source = env_chemin_caduciel & "fic1.dbf"
If Dir(fichier_destination) <> "" Then Kill fichier_destination
FileCopy fichier_source, fichier_destination
il s'agit donc de la copie d'un fichier de type dbf d'un répertoire sur
un autre. Sous Windows cela fonctionne très bien, mais quand je le fais
sous VB, j'ai un message d'erreur de type autorisation refusé quand je
veux executer le filecopy.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
thierry
In article , says...
Hello,
Je voudrais faire une copie de fichier dans un programme VB. Pour cela j'utilise la fonction FileCopy de la manière suivante:
fichier_destination = repertoire & "fic1.dbf" fichier_source = env_chemin_caduciel & "fic1.dbf" If Dir(fichier_destination) <> "" Then Kill fichier_destination FileCopy fichier_source, fichier_destination
il s'agit donc de la copie d'un fichier de type dbf d'un répertoire sur un autre. Sous Windows cela fonctionne très bien, mais quand je le fais sous VB, j'ai un message d'erreur de type autorisation refusé quand je veux executer le filecopy.
Une idée?
Cdt
Thierry
laisser tomber, en utilisant FSO (vive la FAQ VB), ça marche
In article <GFr.1d12394eb744f31f989750@News.dial.oleane.com>,
titi@laposte.net says...
Hello,
Je voudrais faire une copie de fichier dans un programme VB. Pour cela
j'utilise la fonction FileCopy de la manière suivante:
fichier_destination = repertoire & "fic1.dbf"
fichier_source = env_chemin_caduciel & "fic1.dbf"
If Dir(fichier_destination) <> "" Then Kill fichier_destination
FileCopy fichier_source, fichier_destination
il s'agit donc de la copie d'un fichier de type dbf d'un répertoire sur
un autre. Sous Windows cela fonctionne très bien, mais quand je le fais
sous VB, j'ai un message d'erreur de type autorisation refusé quand je
veux executer le filecopy.
Une idée?
Cdt
Thierry
laisser tomber, en utilisant FSO (vive la FAQ VB), ça marche
Je voudrais faire une copie de fichier dans un programme VB. Pour cela j'utilise la fonction FileCopy de la manière suivante:
fichier_destination = repertoire & "fic1.dbf" fichier_source = env_chemin_caduciel & "fic1.dbf" If Dir(fichier_destination) <> "" Then Kill fichier_destination FileCopy fichier_source, fichier_destination
il s'agit donc de la copie d'un fichier de type dbf d'un répertoire sur un autre. Sous Windows cela fonctionne très bien, mais quand je le fais sous VB, j'ai un message d'erreur de type autorisation refusé quand je veux executer le filecopy.
Une idée?
Cdt
Thierry
laisser tomber, en utilisant FSO (vive la FAQ VB), ça marche
Patrice Henrio
Pour ma part j'utilise la fonction suivante : Declare Function CopyFile Lib "kernel32" Alias "CopyFileA" ( _ ByVal lpExistingFileName As String, _ ByVal lpNewFileName As String, _ ByVal bFailIfExists As Long) As Long
que j'ai francisé ainsi : Public Sub CopieFichier(Source As String, Cible As String, Remplace As Boolean) Dim ErreurSiCibleExiste As Long ErreurSiCibleExiste = CLng(Not (Remplace)) ErreurSiCibleExiste = CopyFile(Source, Cible, ErreurSiCibleExiste) End Sub
Si Remplace a la valeur True, la copie autorise le remplacement du fichier s'il existe déjà, si c'est la valeur False, il y a une erreur et la copie n'a pas lieu.
"thierry" a écrit dans le message de news:
In article , says...
Hello,
Je voudrais faire une copie de fichier dans un programme VB. Pour cela j'utilise la fonction FileCopy de la manière suivante:
fichier_destination = repertoire & "fic1.dbf" fichier_source = env_chemin_caduciel & "fic1.dbf" If Dir(fichier_destination) <> "" Then Kill fichier_destination FileCopy fichier_source, fichier_destination
il s'agit donc de la copie d'un fichier de type dbf d'un répertoire sur un autre. Sous Windows cela fonctionne très bien, mais quand je le fais sous VB, j'ai un message d'erreur de type autorisation refusé quand je veux executer le filecopy.
Une idée?
Cdt
Thierry
laisser tomber, en utilisant FSO (vive la FAQ VB), ça marche
Pour ma part j'utilise la fonction suivante :
Declare Function CopyFile Lib "kernel32" Alias "CopyFileA" ( _
ByVal lpExistingFileName As String, _
ByVal lpNewFileName As String, _
ByVal bFailIfExists As Long) As Long
que j'ai francisé ainsi :
Public Sub CopieFichier(Source As String, Cible As String, Remplace As
Boolean)
Dim ErreurSiCibleExiste As Long
ErreurSiCibleExiste = CLng(Not (Remplace))
ErreurSiCibleExiste = CopyFile(Source, Cible, ErreurSiCibleExiste)
End Sub
Si Remplace a la valeur True, la copie autorise le remplacement du fichier
s'il existe déjà, si c'est la valeur False, il y a une erreur et la copie
n'a pas lieu.
"thierry" <titi@laposte.net> a écrit dans le message de news:
GFr.1d123d3c6703be70989751@News.dial.oleane.com...
In article <GFr.1d12394eb744f31f989750@News.dial.oleane.com>,
titi@laposte.net says...
Hello,
Je voudrais faire une copie de fichier dans un programme VB. Pour cela
j'utilise la fonction FileCopy de la manière suivante:
fichier_destination = repertoire & "fic1.dbf"
fichier_source = env_chemin_caduciel & "fic1.dbf"
If Dir(fichier_destination) <> "" Then Kill fichier_destination
FileCopy fichier_source, fichier_destination
il s'agit donc de la copie d'un fichier de type dbf d'un répertoire sur
un autre. Sous Windows cela fonctionne très bien, mais quand je le fais
sous VB, j'ai un message d'erreur de type autorisation refusé quand je
veux executer le filecopy.
Une idée?
Cdt
Thierry
laisser tomber, en utilisant FSO (vive la FAQ VB), ça marche
Pour ma part j'utilise la fonction suivante : Declare Function CopyFile Lib "kernel32" Alias "CopyFileA" ( _ ByVal lpExistingFileName As String, _ ByVal lpNewFileName As String, _ ByVal bFailIfExists As Long) As Long
que j'ai francisé ainsi : Public Sub CopieFichier(Source As String, Cible As String, Remplace As Boolean) Dim ErreurSiCibleExiste As Long ErreurSiCibleExiste = CLng(Not (Remplace)) ErreurSiCibleExiste = CopyFile(Source, Cible, ErreurSiCibleExiste) End Sub
Si Remplace a la valeur True, la copie autorise le remplacement du fichier s'il existe déjà, si c'est la valeur False, il y a une erreur et la copie n'a pas lieu.
"thierry" a écrit dans le message de news:
In article , says...
Hello,
Je voudrais faire une copie de fichier dans un programme VB. Pour cela j'utilise la fonction FileCopy de la manière suivante:
fichier_destination = repertoire & "fic1.dbf" fichier_source = env_chemin_caduciel & "fic1.dbf" If Dir(fichier_destination) <> "" Then Kill fichier_destination FileCopy fichier_source, fichier_destination
il s'agit donc de la copie d'un fichier de type dbf d'un répertoire sur un autre. Sous Windows cela fonctionne très bien, mais quand je le fais sous VB, j'ai un message d'erreur de type autorisation refusé quand je veux executer le filecopy.
Une idée?
Cdt
Thierry
laisser tomber, en utilisant FSO (vive la FAQ VB), ça marche
Zoury
Salut Thierry ! :O)
laisser tomber, en utilisant FSO (vive la FAQ VB), ça marche
Laisser tomber quand tu nous parle d'FSO ? JAMAAAAAAIS!!!! ;O)
Quels sont les désavantages d'FSO ? http://faq.vb.free.fr/index.php?question6
Ton problème vient du fait que tu emplois Dir$() pour vérifier si le fichier existe. Dir$() conserve un handle ouvert sur ce fichier ce qui cause l'erreur que tu reçois.
Tu peux employé la solution de Patrice qui est très ingénieuse.
Pour une solution purement VB, test l'existence du fichier avec cette fonction : '*** Private Function FileExists(ByVal FileName As String) As Boolean On Error Resume Next FileExists = ((GetAttr(FileName) Or vbDirectory) = 0) End Function '***
-- Cordialement Yanick MVP pour Visual Basic
Salut Thierry ! :O)
laisser tomber, en utilisant FSO (vive la FAQ VB), ça marche
Laisser tomber quand tu nous parle d'FSO ? JAMAAAAAAIS!!!! ;O)
Quels sont les désavantages d'FSO ?
http://faq.vb.free.fr/index.php?question6
Ton problème vient du fait que tu emplois Dir$() pour vérifier si le fichier
existe. Dir$() conserve un handle ouvert sur ce fichier ce qui cause
l'erreur que tu reçois.
Tu peux employé la solution de Patrice qui est très ingénieuse.
Pour une solution purement VB, test l'existence du fichier avec cette
fonction :
'***
Private Function FileExists(ByVal FileName As String) As Boolean
On Error Resume Next
FileExists = ((GetAttr(FileName) Or vbDirectory) = 0)
End Function
'***
laisser tomber, en utilisant FSO (vive la FAQ VB), ça marche
Laisser tomber quand tu nous parle d'FSO ? JAMAAAAAAIS!!!! ;O)
Quels sont les désavantages d'FSO ? http://faq.vb.free.fr/index.php?question6
Ton problème vient du fait que tu emplois Dir$() pour vérifier si le fichier existe. Dir$() conserve un handle ouvert sur ce fichier ce qui cause l'erreur que tu reçois.
Tu peux employé la solution de Patrice qui est très ingénieuse.
Pour une solution purement VB, test l'existence du fichier avec cette fonction : '*** Private Function FileExists(ByVal FileName As String) As Boolean On Error Resume Next FileExists = ((GetAttr(FileName) Or vbDirectory) = 0) End Function '***