PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEV, WEBDEV ET WINDEV MOBILE


  • Procédure manipulant chaque fichier copié (syntaxe 2 uniquement)
  • Valeurs renvoyées par la procédure (Syntaxe 2)
  • Gestion des erreurs
  • Fonctionnement sous Windows Vista (et supérieur)
  • Création de répertoires lors de la copie
  • Équivalence
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
Copie un ou plusieurs fichiers (quels que soient leurs attributs).
Versions 15 et supérieures
Android Cette fonction est désormais disponible pour les applications Android.
Nouveauté 15
Android Cette fonction est désormais disponible pour les applications Android.
Android Cette fonction est désormais disponible pour les applications Android.
Versions 17 et supérieures
iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
Universal Windows 10 App Cette fonction est désormais disponible pour les applications Windows Phone.
Nouveauté 17
iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
Universal Windows 10 App Cette fonction est désormais disponible pour les applications Windows Phone.
iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
Universal Windows 10 App Cette fonction est désormais disponible pour les applications Windows Phone.
Versions 18 et supérieures
Widget Android Cette fonction est désormais disponible en mode Widget Android.
Universal Windows 10 App Cette fonction est désormais disponible en mode Windows Store apps.
Nouveauté 18
Widget Android Cette fonction est désormais disponible en mode Widget Android.
Universal Windows 10 App Cette fonction est désormais disponible en mode Windows Store apps.
Widget Android Cette fonction est désormais disponible en mode Widget Android.
Universal Windows 10 App Cette fonction est désormais disponible en mode Windows Store apps.
Versions 21 et supérieures
Universal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Nouveauté 21
Universal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Universal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
WINDEVWEBDEV - Code ServeurEtats et RequêtesJavaPHPAjaxCode Utilisateur (MCU)
// Copie de "Fichier.doc" vers "CopieFichier.doc"
Res = fCopieFichier("C:\Répertoires\Fichier.doc", "D:\Documents\CopieFichier.doc")
Windows Mobile
// Copie d'un fichier
Res = fCopieFichier("\Répertoires\Fichier.psw", "\Documents\CopieFichier.psw")
WINDEVWEBDEV - Code ServeurEtats et RequêtesJavaPHPAjaxCode Utilisateur (MCU)
// Copie les fichiers présents dans le répertoire "C:\MesImages"
// Les sous-répertoires et leurs fichiers sont pris en compte (constante frRécursif)
ResCopie = fCopieFichier("C:\MesImages\*.*", "D:\MesFichiers\", frRécursif)
Syntaxe

Copier un fichier ou un répertoire Masquer les détails

<Résultat> = fCopieFichier(<Fichier source> , <Fichier ou répertoire destination> [, <Indicateur de copie>])
<Résultat> : Booléen
  • Vrai si le ou les fichiers ont été copiés,
  • Faux dans le cas contraire. Pour connaître le libellé de l'erreur, utilisez la fonction ErreurInfo avec la constante errMessage.
<Fichier source> : Chaîne de caractères (avec guillemets)
Fichier à copier (260 caractères maximum). Ce paramètre peut correspondre à :
  • un nom de fichier. Ce fichier sera automatiquement recherché dans le répertoire en cours (connu avec la fonction fRepEnCours).
  • un nom de fichier avec son chemin (complet ou relatif). Un chemin de type UNC peut être utilisé.
Cas particuliers selon les plateformes :
  • Versions 15 et supérieures
    WindowsLinux Ce paramètre peut être au format Ansi ou Unicode.
    Nouveauté 15
    WindowsLinux Ce paramètre peut être au format Ansi ou Unicode.
    WindowsLinux Ce paramètre peut être au format Ansi ou Unicode.
  • Versions 15 et supérieures
    AndroidWidget Android Ce paramètre peut correspondre à un chemin complet ou relatif par rapport au répertoire en cours (connu avec la fonction fRepEnCours). Ce paramètre est sensible à la casse.
    Rappel : Sous Android, sur l'appareil comme sur l'émulateur, le système de fichiers est en lecture seule. Une application a uniquement le droit d'écrire dans son répertoire d'installation ou dans un de ses sous-répertoires, ainsi que sur la mémoire externe (SDCard).
    Nouveauté 15
    AndroidWidget Android Ce paramètre peut correspondre à un chemin complet ou relatif par rapport au répertoire en cours (connu avec la fonction fRepEnCours). Ce paramètre est sensible à la casse.
    Rappel : Sous Android, sur l'appareil comme sur l'émulateur, le système de fichiers est en lecture seule. Une application a uniquement le droit d'écrire dans son répertoire d'installation ou dans un de ses sous-répertoires, ainsi que sur la mémoire externe (SDCard).
    AndroidWidget Android Ce paramètre peut correspondre à un chemin complet ou relatif par rapport au répertoire en cours (connu avec la fonction fRepEnCours). Ce paramètre est sensible à la casse.
    Rappel : Sous Android, sur l'appareil comme sur l'émulateur, le système de fichiers est en lecture seule. Une application a uniquement le droit d'écrire dans son répertoire d'installation ou dans un de ses sous-répertoires, ainsi que sur la mémoire externe (SDCard).
  • Versions 17 et supérieures
    iPhone/iPad Ce paramètre peut correspondre à un chemin complet ou relatif par rapport au répertoire en cours (connu avec la fonction fRepEnCours). Ce paramètre est sensible à la casse.
    Rappel : Sous les iPhone/iPad, sur l'appareil comme sur l'émulateur, le système de fichiers est en lecture seule. Une application a uniquement le droit d'écrire dans son répertoire d'installation ou dans un de ses sous-répertoires.
    Nouveauté 17
    iPhone/iPad Ce paramètre peut correspondre à un chemin complet ou relatif par rapport au répertoire en cours (connu avec la fonction fRepEnCours). Ce paramètre est sensible à la casse.
    Rappel : Sous les iPhone/iPad, sur l'appareil comme sur l'émulateur, le système de fichiers est en lecture seule. Une application a uniquement le droit d'écrire dans son répertoire d'installation ou dans un de ses sous-répertoires.
    iPhone/iPad Ce paramètre peut correspondre à un chemin complet ou relatif par rapport au répertoire en cours (connu avec la fonction fRepEnCours). Ce paramètre est sensible à la casse.
    Rappel : Sous les iPhone/iPad, sur l'appareil comme sur l'émulateur, le système de fichiers est en lecture seule. Une application a uniquement le droit d'écrire dans son répertoire d'installation ou dans un de ses sous-répertoires.
  • Versions 17 et supérieures
    Universal Windows 10 App Windows Phone : Ce paramètre correspond à un chemin relatif par rapport au répertoire en cours. Le répertoire en cours correspond au répertoire des données de l'application connu.
    Rappel : Seuls les fichiers présents dans le répertoire des données associé à l'application peuvent être manipulés.
    Nouveauté 17
    Universal Windows 10 App Windows Phone : Ce paramètre correspond à un chemin relatif par rapport au répertoire en cours. Le répertoire en cours correspond au répertoire des données de l'application connu.
    Rappel : Seuls les fichiers présents dans le répertoire des données associé à l'application peuvent être manipulés.
    Universal Windows 10 App Windows Phone : Ce paramètre correspond à un chemin relatif par rapport au répertoire en cours. Le répertoire en cours correspond au répertoire des données de l'application connu.
    Rappel : Seuls les fichiers présents dans le répertoire des données associé à l'application peuvent être manipulés.
Gestion des caractères joker (*, ?) : Par défaut, les caractères jokers sont autorisés dans le nom du fichier.
Cas particulier selon les plateformes :
  • Versions 18 et supérieures
    Universal Windows 10 App Les caractères jokers (*, ?) ne sont pas autorisés dans le nom du fichier.
    Nouveauté 18
    Universal Windows 10 App Les caractères jokers (*, ?) ne sont pas autorisés dans le nom du fichier.
    Universal Windows 10 App Les caractères jokers (*, ?) ne sont pas autorisés dans le nom du fichier.
  • Java Si l'expression "*.*" est utilisée, seuls les fichiers avec extension seront copiés.
  • PHP Les caractères jokers (*,?) sont autorisés dans le chemin et le nom du fichier.
  • Windows Mobile Les caractères jokers (*, ?) ne sont pas autorisés.
<Fichier ou répertoire destination> : Chaîne de caractères (avec guillemets)
Fichier et/ou répertoire destination (260 caractères maximum). Ce paramètre peut correspondre à :
  • un nom de fichier. Ce fichier sera automatiquement créé dans le répertoire en cours (connu avec la fonction fRepEnCours).
  • un nom de fichier avec son chemin (complet ou relatif). Un chemin de type UNC peut être utilisé.
  • un chemin (complet ou relatif), uniquement dans le cas d'une copie avec caractères jokers.
Si ce paramètre correspond à un nom de répertoire, ce nom peut être terminé indifféremment par "\" ou non.
Cas particuliers selon les plateformes :
  • Versions 15 et supérieures
    WindowsLinux Ce paramètre peut être au format Ansi ou Unicode.
    Nouveauté 15
    WindowsLinux Ce paramètre peut être au format Ansi ou Unicode.
    WindowsLinux Ce paramètre peut être au format Ansi ou Unicode.
  • Versions 15 et supérieures
    AndroidWidget Android Ce paramètre peut correspondre à un chemin complet ou relatif par rapport au répertoire en cours (connu avec la fonction fRepEnCours). Ce paramètre est sensible à la casse.
    Rappel : Sous Android, sur l'appareil comme sur l'émulateur, le système de fichiers est en lecture seule. Une application a uniquement le droit d'écrire dans son répertoire d'installation ou dans un de ses sous-répertoires, ainsi que sur la mémoire externe (SDCard).
    Nouveauté 15
    AndroidWidget Android Ce paramètre peut correspondre à un chemin complet ou relatif par rapport au répertoire en cours (connu avec la fonction fRepEnCours). Ce paramètre est sensible à la casse.
    Rappel : Sous Android, sur l'appareil comme sur l'émulateur, le système de fichiers est en lecture seule. Une application a uniquement le droit d'écrire dans son répertoire d'installation ou dans un de ses sous-répertoires, ainsi que sur la mémoire externe (SDCard).
    AndroidWidget Android Ce paramètre peut correspondre à un chemin complet ou relatif par rapport au répertoire en cours (connu avec la fonction fRepEnCours). Ce paramètre est sensible à la casse.
    Rappel : Sous Android, sur l'appareil comme sur l'émulateur, le système de fichiers est en lecture seule. Une application a uniquement le droit d'écrire dans son répertoire d'installation ou dans un de ses sous-répertoires, ainsi que sur la mémoire externe (SDCard).
  • Windows Mobile Ce paramètre peut correspondre à :
    • un nom de fichier avec son chemin.
    • un chemin, uniquement dans le cas d'une copie avec caractères jokers. Si ce paramètre correspond à un nom de répertoire, ce nom peut être terminé indifféremment par "\" ou non.
  • Versions 17 et supérieures
    iPhone/iPad Ce paramètre peut correspondre à un chemin complet ou relatif par rapport au répertoire en cours (connu avec la fonction fRepEnCours). Ce paramètre est sensible à la casse.
    Rappel : Sous les iPhone/iPad, sur l'appareil comme sur l'émulateur, le système de fichiers est en lecture seule. Une application a uniquement le droit d'écrire dans son répertoire d'installation ou dans un de ses sous-répertoires.
    Nouveauté 17
    iPhone/iPad Ce paramètre peut correspondre à un chemin complet ou relatif par rapport au répertoire en cours (connu avec la fonction fRepEnCours). Ce paramètre est sensible à la casse.
    Rappel : Sous les iPhone/iPad, sur l'appareil comme sur l'émulateur, le système de fichiers est en lecture seule. Une application a uniquement le droit d'écrire dans son répertoire d'installation ou dans un de ses sous-répertoires.
    iPhone/iPad Ce paramètre peut correspondre à un chemin complet ou relatif par rapport au répertoire en cours (connu avec la fonction fRepEnCours). Ce paramètre est sensible à la casse.
    Rappel : Sous les iPhone/iPad, sur l'appareil comme sur l'émulateur, le système de fichiers est en lecture seule. Une application a uniquement le droit d'écrire dans son répertoire d'installation ou dans un de ses sous-répertoires.
  • Versions 17 et supérieures
    Universal Windows 10 App Ce paramètre correspond à un chemin relatif par rapport au répertoire en cours. Le répertoire en cours correspond au répertoire des données de l'application connu.
    Rappel : Seuls les fichiers présents dans le répertoire des données associé à l'application peuvent être manipulés.
    Nouveauté 17
    Universal Windows 10 App Ce paramètre correspond à un chemin relatif par rapport au répertoire en cours. Le répertoire en cours correspond au répertoire des données de l'application connu.
    Rappel : Seuls les fichiers présents dans le répertoire des données associé à l'application peuvent être manipulés.
    Universal Windows 10 App Ce paramètre correspond à un chemin relatif par rapport au répertoire en cours. Le répertoire en cours correspond au répertoire des données de l'application connu.
    Rappel : Seuls les fichiers présents dans le répertoire des données associé à l'application peuvent être manipulés.
<Indicateur de copie> : Constante optionnelle
Type de copie à effectuer :
frConfirmerCopie d'un fichier avec demande de confirmation avant l'écrasement d'un fichier de même nom.
WEBDEV - Code ServeurAndroidWidget AndroidUniversal Windows 10 AppPHP Cette constante n'est pas disponible.
frJaugeUne fenêtre de progression est affichée. Si le fichier est petit (quelques octets), la jauge n'est pas affichée.
WEBDEV - Code ServeurAndroidWidget AndroidiPhone/iPadUniversal Windows 10 AppJavaPHP Cette constante n'est pas disponible.
frRécursifCopie récursive de fichiers. Les sous-répertoires et leurs fichiers sont pris en compte.

Par défaut, <Indicateur de copie> est vide. Aucune des options n'est sélectionnée.
Windows Mobile Ce paramètre n'est pas disponible.
Versions 19 et supérieures
WINDEVWEBDEV - Code ServeurEtats et RequêtesiPhone/iPadWindows MobileUniversal Windows 10 AppCode Utilisateur (MCU)Procédures stockées

Copier un ou plusieurs fichiers en manipulant chaque fichier copié Masquer les détails

<Résultat> = fCopieFichier(<Fichier source> , <Fichier ou répertoire destination> , <Nom de la procédure> [, <Pointeur> [, <Indicateur de copie>]])
<Résultat> : Booléen
  • Vrai si le ou les fichiers ont été copiés,
  • Faux dans le cas contraire. Pour connaître le libellé de l'erreur, utilisez la fonction ErreurInfo avec la constante errMessage.
<Fichier source> : Chaîne de caractères (avec guillemets)
Fichier à copier (260 caractères maximum). Ce paramètre peut correspondre à :
  • un nom de fichier. Ce fichier sera automatiquement recherché dans le répertoire en cours (connu avec la fonction fRepEnCours).
  • un nom de fichier avec son chemin (complet ou relatif). Un chemin de type UNC peut être utilisé.
Les caractères jokers (*, ?) sont autorisés dans le nom du fichier.
Universal Windows 10 App Les caractères jokers (*, ?) ne sont pas autorisés dans le nom du fichier.
WindowsLinux Ce paramètre peut être au format Ansi ou Unicode.
Windows Mobile Nom et chemin complet du fichier à copier (260 caractères maximum). Les caractères jokers (*, ?) ne sont pas autorisés.
iPhone/iPad Ce paramètre peut correspondre à un chemin complet ou relatif par rapport au répertoire en cours (connu avec la fonction fRepEnCours). Ce paramètre est sensible à la casse.
Rappel : Sous les iPhone/iPad, sur l'appareil comme sur l'émulateur, le système de fichiers est en lecture seule. Une application a uniquement le droit d'écrire dans son répertoire d'installation ou dans un de ses sous-répertoires.
<Fichier ou répertoire destination> : Chaîne de caractères (avec guillemets)
Fichier et/ou répertoire destination (260 caractères maximum). Ce paramètre peut correspondre à :
  • un nom de fichier. Ce fichier sera automatiquement créé dans le répertoire en cours (connu avec la fonction fRepEnCours).
  • un nom de fichier avec son chemin (complet ou relatif). Un chemin de type UNC peut être utilisé.
  • un chemin (complet ou relatif), uniquement dans le cas d'une copie avec caractères jokers.
Si ce paramètre correspond à un nom de répertoire, ce nom peut être terminé indifféremment par "\" ou non.
WindowsLinux Ce paramètre peut être au format Ansi ou Unicode.
Windows Mobile Fichier et/ou répertoire destination (260 caractères maximum). Ce paramètre peut correspondre à :
  • un nom de fichier avec son chemin.
  • un chemin, uniquement dans le cas d'une copie avec caractères jokers.
Si ce paramètre correspond à un nom de répertoire, ce nom peut être terminé indifféremment par "\" ou non.
iPhone/iPad Ce paramètre peut correspondre à un chemin complet ou relatif par rapport au répertoire en cours (connu avec la fonction fRepEnCours). Ce paramètre est sensible à la casse.
Rappel : Sous les iPhone/iPad, sur l'appareil comme sur l'émulateur, le système de fichiers est en lecture seule. Une application a uniquement le droit d'écrire dans son répertoire d'installation ou dans un de ses sous-répertoires.
<Nom de la procédure> : Chaîne de caractères (avec ou sans guillemets)
Nom de la procédure WLangage (également nommée "callback") appelée pour chaque fichier copié. Cette procédure permet de manipuler le fichier en cours.
Cette procédure est de la forme :
PROCEDURE <Nom de la procédure> (<Chemin du fichier à copier>,
<Chemin du fichier destination>, <Change>, <Pointeur de la procédure>)

Les paramètres de cette procédure sont optionnels.
Il n'est pas nécessaire de passer des paramètres à cette procédure. En effet, ces paramètres sont renseignés automatiquement à chaque fichier traité.
<Pointeur> : Entier optionnel
Pointeur passé à la procédure <Nom de la procédure>.
<Indicateur de copie> : Constante optionnelle
Type de copie à effectuer :
frRécursifCopie récursive de fichiers. Les sous-répertoires et leurs fichiers sont pris en compte.

Par défaut, <Indicateur de copie> est vide : le traitement n'est pas récursif.
Windows Mobile Ce paramètre n'est pas disponible.
Nouveauté 19
WINDEVWEBDEV - Code ServeurEtats et RequêtesiPhone/iPadWindows MobileUniversal Windows 10 AppCode Utilisateur (MCU)Procédures stockées

Copier un ou plusieurs fichiers en manipulant chaque fichier copié Masquer les détails

<Résultat> = fCopieFichier(<Fichier source> , <Fichier ou répertoire destination> , <Nom de la procédure> [, <Pointeur> [, <Indicateur de copie>]])
<Résultat> : Booléen
  • Vrai si le ou les fichiers ont été copiés,
  • Faux dans le cas contraire. Pour connaître le libellé de l'erreur, utilisez la fonction ErreurInfo avec la constante errMessage.
<Fichier source> : Chaîne de caractères (avec guillemets)
Fichier à copier (260 caractères maximum). Ce paramètre peut correspondre à :
  • un nom de fichier. Ce fichier sera automatiquement recherché dans le répertoire en cours (connu avec la fonction fRepEnCours).
  • un nom de fichier avec son chemin (complet ou relatif). Un chemin de type UNC peut être utilisé.
Les caractères jokers (*, ?) sont autorisés dans le nom du fichier.
Universal Windows 10 App Les caractères jokers (*, ?) ne sont pas autorisés dans le nom du fichier.
WindowsLinux Ce paramètre peut être au format Ansi ou Unicode.
Windows Mobile Nom et chemin complet du fichier à copier (260 caractères maximum). Les caractères jokers (*, ?) ne sont pas autorisés.
iPhone/iPad Ce paramètre peut correspondre à un chemin complet ou relatif par rapport au répertoire en cours (connu avec la fonction fRepEnCours). Ce paramètre est sensible à la casse.
Rappel : Sous les iPhone/iPad, sur l'appareil comme sur l'émulateur, le système de fichiers est en lecture seule. Une application a uniquement le droit d'écrire dans son répertoire d'installation ou dans un de ses sous-répertoires.
<Fichier ou répertoire destination> : Chaîne de caractères (avec guillemets)
Fichier et/ou répertoire destination (260 caractères maximum). Ce paramètre peut correspondre à :
  • un nom de fichier. Ce fichier sera automatiquement créé dans le répertoire en cours (connu avec la fonction fRepEnCours).
  • un nom de fichier avec son chemin (complet ou relatif). Un chemin de type UNC peut être utilisé.
  • un chemin (complet ou relatif), uniquement dans le cas d'une copie avec caractères jokers.
Si ce paramètre correspond à un nom de répertoire, ce nom peut être terminé indifféremment par "\" ou non.
WindowsLinux Ce paramètre peut être au format Ansi ou Unicode.
Windows Mobile Fichier et/ou répertoire destination (260 caractères maximum). Ce paramètre peut correspondre à :
  • un nom de fichier avec son chemin.
  • un chemin, uniquement dans le cas d'une copie avec caractères jokers.
Si ce paramètre correspond à un nom de répertoire, ce nom peut être terminé indifféremment par "\" ou non.
iPhone/iPad Ce paramètre peut correspondre à un chemin complet ou relatif par rapport au répertoire en cours (connu avec la fonction fRepEnCours). Ce paramètre est sensible à la casse.
Rappel : Sous les iPhone/iPad, sur l'appareil comme sur l'émulateur, le système de fichiers est en lecture seule. Une application a uniquement le droit d'écrire dans son répertoire d'installation ou dans un de ses sous-répertoires.
<Nom de la procédure> : Chaîne de caractères (avec ou sans guillemets)
Nom de la procédure WLangage (également nommée "callback") appelée pour chaque fichier copié. Cette procédure permet de manipuler le fichier en cours.
Cette procédure est de la forme :
PROCEDURE <Nom de la procédure> (<Chemin du fichier à copier>,
<Chemin du fichier destination>, <Change>, <Pointeur de la procédure>)

Les paramètres de cette procédure sont optionnels.
Il n'est pas nécessaire de passer des paramètres à cette procédure. En effet, ces paramètres sont renseignés automatiquement à chaque fichier traité.
<Pointeur> : Entier optionnel
Pointeur passé à la procédure <Nom de la procédure>.
<Indicateur de copie> : Constante optionnelle
Type de copie à effectuer :
frRécursifCopie récursive de fichiers. Les sous-répertoires et leurs fichiers sont pris en compte.

Par défaut, <Indicateur de copie> est vide : le traitement n'est pas récursif.
Windows Mobile Ce paramètre n'est pas disponible.
WINDEVWEBDEV - Code ServeurEtats et RequêtesiPhone/iPadWindows MobileUniversal Windows 10 AppCode Utilisateur (MCU)Procédures stockées

Copier un ou plusieurs fichiers en manipulant chaque fichier copié Masquer les détails

<Résultat> = fCopieFichier(<Fichier source> , <Fichier ou répertoire destination> , <Nom de la procédure> [, <Pointeur> [, <Indicateur de copie>]])
<Résultat> : Booléen
  • Vrai si le ou les fichiers ont été copiés,
  • Faux dans le cas contraire. Pour connaître le libellé de l'erreur, utilisez la fonction ErreurInfo avec la constante errMessage.
<Fichier source> : Chaîne de caractères (avec guillemets)
Fichier à copier (260 caractères maximum). Ce paramètre peut correspondre à :
  • un nom de fichier. Ce fichier sera automatiquement recherché dans le répertoire en cours (connu avec la fonction fRepEnCours).
  • un nom de fichier avec son chemin (complet ou relatif). Un chemin de type UNC peut être utilisé.
Les caractères jokers (*, ?) sont autorisés dans le nom du fichier.
Universal Windows 10 App Les caractères jokers (*, ?) ne sont pas autorisés dans le nom du fichier.
WindowsLinux Ce paramètre peut être au format Ansi ou Unicode.
Windows Mobile Nom et chemin complet du fichier à copier (260 caractères maximum). Les caractères jokers (*, ?) ne sont pas autorisés.
iPhone/iPad Ce paramètre peut correspondre à un chemin complet ou relatif par rapport au répertoire en cours (connu avec la fonction fRepEnCours). Ce paramètre est sensible à la casse.
Rappel : Sous les iPhone/iPad, sur l'appareil comme sur l'émulateur, le système de fichiers est en lecture seule. Une application a uniquement le droit d'écrire dans son répertoire d'installation ou dans un de ses sous-répertoires.
<Fichier ou répertoire destination> : Chaîne de caractères (avec guillemets)
Fichier et/ou répertoire destination (260 caractères maximum). Ce paramètre peut correspondre à :
  • un nom de fichier. Ce fichier sera automatiquement créé dans le répertoire en cours (connu avec la fonction fRepEnCours).
  • un nom de fichier avec son chemin (complet ou relatif). Un chemin de type UNC peut être utilisé.
  • un chemin (complet ou relatif), uniquement dans le cas d'une copie avec caractères jokers.
Si ce paramètre correspond à un nom de répertoire, ce nom peut être terminé indifféremment par "\" ou non.
WindowsLinux Ce paramètre peut être au format Ansi ou Unicode.
Windows Mobile Fichier et/ou répertoire destination (260 caractères maximum). Ce paramètre peut correspondre à :
  • un nom de fichier avec son chemin.
  • un chemin, uniquement dans le cas d'une copie avec caractères jokers.
Si ce paramètre correspond à un nom de répertoire, ce nom peut être terminé indifféremment par "\" ou non.
iPhone/iPad Ce paramètre peut correspondre à un chemin complet ou relatif par rapport au répertoire en cours (connu avec la fonction fRepEnCours). Ce paramètre est sensible à la casse.
Rappel : Sous les iPhone/iPad, sur l'appareil comme sur l'émulateur, le système de fichiers est en lecture seule. Une application a uniquement le droit d'écrire dans son répertoire d'installation ou dans un de ses sous-répertoires.
<Nom de la procédure> : Chaîne de caractères (avec ou sans guillemets)
Nom de la procédure WLangage (également nommée "callback") appelée pour chaque fichier copié. Cette procédure permet de manipuler le fichier en cours.
Cette procédure est de la forme :
PROCEDURE <Nom de la procédure> (<Chemin du fichier à copier>,
<Chemin du fichier destination>, <Change>, <Pointeur de la procédure>)

Les paramètres de cette procédure sont optionnels.
Il n'est pas nécessaire de passer des paramètres à cette procédure. En effet, ces paramètres sont renseignés automatiquement à chaque fichier traité.
<Pointeur> : Entier optionnel
Pointeur passé à la procédure <Nom de la procédure>.
<Indicateur de copie> : Constante optionnelle
Type de copie à effectuer :
frRécursifCopie récursive de fichiers. Les sous-répertoires et leurs fichiers sont pris en compte.

Par défaut, <Indicateur de copie> est vide : le traitement n'est pas récursif.
Windows Mobile Ce paramètre n'est pas disponible.
Remarques
Versions 19 et supérieures

Procédure manipulant chaque fichier copié (syntaxe 2 uniquement)

Pour chaque fichier trouvé, la fonction fCopieFichier appelle automatiquement la procédure <Nom de la procédure>. Cette procédure est une procédure locale ou globale.
Pour créer cette procédure :
  1. Créez une procédure globale (depuis l'éditeur de code : sous le volet "Code", dans le groupe "Procédures", déroulez "Nouveau" et sélectionnez "Nouvelle procédure globale").
  2. Complétez la déclaration de la procédure de la manière suivante :
PROCEDURE <Nom de la procédure> (<Chemin du fichier à copier>, <Chemin du fichier destination>,
[ <Change>, [<Pointeur de la procédure>]])
  • <Chemin du fichier à copier> est le chemin du fichier à copier.
  • <Chemin du fichier destination> est une chaîne de caractères contenant le nom du fichier destination.
  • <Change> est une constante optionnelle qui vaut :
    • flPremierFichier lorsque le fichier est le premier copié dans le répertoire de <Fichier source>,
    • flChangeRépertoire lorsque le fichier est le premier listé dans un sous-répertoire de <Chemin du répertoire à copier> (cela signifie qu'il y a eu changement de répertoire),
    • flFichier dans tous les autres cas.
      Voici les différentes valeurs pouvant être prises par <Change> :
      Fichier en cours<Change>
      Rep\Fichier 1flPremierFichier
      Rep\Fichier nflFichier
      Rep\SousRep 1\Fichier 1flChangeRépertoire
      Rep\SousRep 1\Fichier mflFichier
      Rep\SousRep 2\Fichier 1flChangeRépertoire
      Rep\SousRep 2\Fichier xflFichier
  • <Pointeur de la procédure> est un entier optionnel qui vaut la valeur passée dans le paramètre <Pointeur> de la fonction fCopieFichier. Si le paramètre <Pointeur> n'est pas précisé, <Pointeur> vaut 0.
Pour récupérer la valeur du <Pointeur de la procédure>, affectez la valeur du <Pointeur de la procédure> à la valeur du <Pointeur> dans la procédure avec la fonction Transfert.
Remarque : Les paramètres de cette procédure sont optionnels : il est possible par exemple de ne spécifier que le chemin du fichier à copier et le chemin du fichier destination.
Nouveauté 19

Procédure manipulant chaque fichier copié (syntaxe 2 uniquement)

Pour chaque fichier trouvé, la fonction fCopieFichier appelle automatiquement la procédure <Nom de la procédure>. Cette procédure est une procédure locale ou globale.
Pour créer cette procédure :
  1. Créez une procédure globale (depuis l'éditeur de code : sous le volet "Code", dans le groupe "Procédures", déroulez "Nouveau" et sélectionnez "Nouvelle procédure globale").
  2. Complétez la déclaration de la procédure de la manière suivante :
PROCEDURE <Nom de la procédure> (<Chemin du fichier à copier>, <Chemin du fichier destination>,
[ <Change>, [<Pointeur de la procédure>]])
  • <Chemin du fichier à copier> est le chemin du fichier à copier.
  • <Chemin du fichier destination> est une chaîne de caractères contenant le nom du fichier destination.
  • <Change> est une constante optionnelle qui vaut :
    • flPremierFichier lorsque le fichier est le premier copié dans le répertoire de <Fichier source>,
    • flChangeRépertoire lorsque le fichier est le premier listé dans un sous-répertoire de <Chemin du répertoire à copier> (cela signifie qu'il y a eu changement de répertoire),
    • flFichier dans tous les autres cas.
      Voici les différentes valeurs pouvant être prises par <Change> :
      Fichier en cours<Change>
      Rep\Fichier 1flPremierFichier
      Rep\Fichier nflFichier
      Rep\SousRep 1\Fichier 1flChangeRépertoire
      Rep\SousRep 1\Fichier mflFichier
      Rep\SousRep 2\Fichier 1flChangeRépertoire
      Rep\SousRep 2\Fichier xflFichier
  • <Pointeur de la procédure> est un entier optionnel qui vaut la valeur passée dans le paramètre <Pointeur> de la fonction fCopieFichier. Si le paramètre <Pointeur> n'est pas précisé, <Pointeur> vaut 0.
Pour récupérer la valeur du <Pointeur de la procédure>, affectez la valeur du <Pointeur de la procédure> à la valeur du <Pointeur> dans la procédure avec la fonction Transfert.
Remarque : Les paramètres de cette procédure sont optionnels : il est possible par exemple de ne spécifier que le chemin du fichier à copier et le chemin du fichier destination.

Procédure manipulant chaque fichier copié (syntaxe 2 uniquement)

Pour chaque fichier trouvé, la fonction fCopieFichier appelle automatiquement la procédure <Nom de la procédure>. Cette procédure est une procédure locale ou globale.
Pour créer cette procédure :
  1. Créez une procédure globale (depuis l'éditeur de code : sous le volet "Code", dans le groupe "Procédures", déroulez "Nouveau" et sélectionnez "Nouvelle procédure globale").
  2. Complétez la déclaration de la procédure de la manière suivante :
PROCEDURE <Nom de la procédure> (<Chemin du fichier à copier>, <Chemin du fichier destination>,
[ <Change>, [<Pointeur de la procédure>]])
  • <Chemin du fichier à copier> est le chemin du fichier à copier.
  • <Chemin du fichier destination> est une chaîne de caractères contenant le nom du fichier destination.
  • <Change> est une constante optionnelle qui vaut :
    • flPremierFichier lorsque le fichier est le premier copié dans le répertoire de <Fichier source>,
    • flChangeRépertoire lorsque le fichier est le premier listé dans un sous-répertoire de <Chemin du répertoire à copier> (cela signifie qu'il y a eu changement de répertoire),
    • flFichier dans tous les autres cas.
      Voici les différentes valeurs pouvant être prises par <Change> :
      Fichier en cours<Change>
      Rep\Fichier 1flPremierFichier
      Rep\Fichier nflFichier
      Rep\SousRep 1\Fichier 1flChangeRépertoire
      Rep\SousRep 1\Fichier mflFichier
      Rep\SousRep 2\Fichier 1flChangeRépertoire
      Rep\SousRep 2\Fichier xflFichier
  • <Pointeur de la procédure> est un entier optionnel qui vaut la valeur passée dans le paramètre <Pointeur> de la fonction fCopieFichier. Si le paramètre <Pointeur> n'est pas précisé, <Pointeur> vaut 0.
Pour récupérer la valeur du <Pointeur de la procédure>, affectez la valeur du <Pointeur de la procédure> à la valeur du <Pointeur> dans la procédure avec la fonction Transfert.
Remarque : Les paramètres de cette procédure sont optionnels : il est possible par exemple de ne spécifier que le chemin du fichier à copier et le chemin du fichier destination.
Versions 19 et supérieures

Valeurs renvoyées par la procédure (Syntaxe 2)

La procédure <Nom de la procédure> doit renvoyer une des valeurs suivantes :
fcArrêtePermet d'arrêter définitivement la copie.
fcCopiePermet de continuer la copie.
fcIgnorePermet d'ignorer la copie d'un fichier.
Si la procédure ne renvoie pas une de ces valeurs, une erreur WLangage apparaît.
Cas 1. Interruption complète de la copie
Pour forcer l'interruption de la copie, la procédure <Nom de la procédure> doit renvoyer la constante fcArrête.
Exemple : la procédure "CopieProduit" est appelée automatiquement par la fonction fCopieFichier :
PROCEDURE CopieProduit(CheminFichierSource, CheminFichierDestination)
...
// Arrêt demandé ?
Multitâche(-1)
SI ToucheEnfoncée(teEchap) = Vrai ALORS
Info("La copie va être arrêtée")
RENVOYER fcArrête
FIN
...
RENVOYER fcCopie
Si la touche Echap est utilisée, la fonction fCopieFichier renvoie la constante fcArrête.
Dans les autres cas (pour poursuivre la copie), la procédure <Nom de la procédure> renvoie la constante fcCopie.
Cas 2. Interruption partielle de la copie
Pour que la procédure <Nom de la procédure> ne s'exécute pas pour un fichier donné, la procédure <Nom de la procédure> doit renvoyer la constante fcIgnore.
Exemple : La procédure "RechercheProduit" est appelée automatiquement par la fonction fCopieFichier :
PROCEDURE RechercheProduit(CheminFichierSource, CheminFichierDestination)
...
// Fichier à ne pas prendre en compte
SI ChaîneFinitPar(CheminFichierSource, "MauvaisFichier.XLS") ALORS
RENVOYER fcIgnore
FIN
...
RENVOYER fcCopie
Pour ne pas copier le fichier "MauvaisFichier.XLS", la procédure renvoie la constante fcIgnore. La procédure <Nom de la procédure> est automatiquement appelée pour le prochain fichier copié, sans avoir copié le fichier en cours.
Nouveauté 19

Valeurs renvoyées par la procédure (Syntaxe 2)

La procédure <Nom de la procédure> doit renvoyer une des valeurs suivantes :
fcArrêtePermet d'arrêter définitivement la copie.
fcCopiePermet de continuer la copie.
fcIgnorePermet d'ignorer la copie d'un fichier.
Si la procédure ne renvoie pas une de ces valeurs, une erreur WLangage apparaît.
Cas 1. Interruption complète de la copie
Pour forcer l'interruption de la copie, la procédure <Nom de la procédure> doit renvoyer la constante fcArrête.
Exemple : la procédure "CopieProduit" est appelée automatiquement par la fonction fCopieFichier :
PROCEDURE CopieProduit(CheminFichierSource, CheminFichierDestination)
...
// Arrêt demandé ?
Multitâche(-1)
SI ToucheEnfoncée(teEchap) = Vrai ALORS
Info("La copie va être arrêtée")
RENVOYER fcArrête
FIN
...
RENVOYER fcCopie
Si la touche Echap est utilisée, la fonction fCopieFichier renvoie la constante fcArrête.
Dans les autres cas (pour poursuivre la copie), la procédure <Nom de la procédure> renvoie la constante fcCopie.
Cas 2. Interruption partielle de la copie
Pour que la procédure <Nom de la procédure> ne s'exécute pas pour un fichier donné, la procédure <Nom de la procédure> doit renvoyer la constante fcIgnore.
Exemple : La procédure "RechercheProduit" est appelée automatiquement par la fonction fCopieFichier :
PROCEDURE RechercheProduit(CheminFichierSource, CheminFichierDestination)
...
// Fichier à ne pas prendre en compte
SI ChaîneFinitPar(CheminFichierSource, "MauvaisFichier.XLS") ALORS
RENVOYER fcIgnore
FIN
...
RENVOYER fcCopie
Pour ne pas copier le fichier "MauvaisFichier.XLS", la procédure renvoie la constante fcIgnore. La procédure <Nom de la procédure> est automatiquement appelée pour le prochain fichier copié, sans avoir copié le fichier en cours.

Valeurs renvoyées par la procédure (Syntaxe 2)

La procédure <Nom de la procédure> doit renvoyer une des valeurs suivantes :
fcArrêtePermet d'arrêter définitivement la copie.
fcCopiePermet de continuer la copie.
fcIgnorePermet d'ignorer la copie d'un fichier.
Si la procédure ne renvoie pas une de ces valeurs, une erreur WLangage apparaît.
Cas 1. Interruption complète de la copie
Pour forcer l'interruption de la copie, la procédure <Nom de la procédure> doit renvoyer la constante fcArrête.
Exemple : la procédure "CopieProduit" est appelée automatiquement par la fonction fCopieFichier :
PROCEDURE CopieProduit(CheminFichierSource, CheminFichierDestination)
...
// Arrêt demandé ?
Multitâche(-1)
SI ToucheEnfoncée(teEchap) = Vrai ALORS
Info("La copie va être arrêtée")
RENVOYER fcArrête
FIN
...
RENVOYER fcCopie
Si la touche Echap est utilisée, la fonction fCopieFichier renvoie la constante fcArrête.
Dans les autres cas (pour poursuivre la copie), la procédure <Nom de la procédure> renvoie la constante fcCopie.
Cas 2. Interruption partielle de la copie
Pour que la procédure <Nom de la procédure> ne s'exécute pas pour un fichier donné, la procédure <Nom de la procédure> doit renvoyer la constante fcIgnore.
Exemple : La procédure "RechercheProduit" est appelée automatiquement par la fonction fCopieFichier :
PROCEDURE RechercheProduit(CheminFichierSource, CheminFichierDestination)
...
// Fichier à ne pas prendre en compte
SI ChaîneFinitPar(CheminFichierSource, "MauvaisFichier.XLS") ALORS
RENVOYER fcIgnore
FIN
...
RENVOYER fcCopie
Pour ne pas copier le fichier "MauvaisFichier.XLS", la procédure renvoie la constante fcIgnore. La procédure <Nom de la procédure> est automatiquement appelée pour le prochain fichier copié, sans avoir copié le fichier en cours.

Gestion des erreurs

La fonction fCopieFichier génère une erreur dans les cas suivants :
  • le fichier à copier n'existe pas,
  • le fichier à copier est bloqué,
  • le <Chemin du fichier à copier> est invalide,
  • le <Chemin du fichier copié> est une chaîne vide,
  • le <Chemin du fichier à copier> et le <Chemin du fichier copié> sont identiques.
WINDEVEtats et RequêtesCode Utilisateur (MCU)

Fonctionnement sous Windows Vista (et supérieur)

Si cette fonction ne fonctionne pas correctement sous Windows Vista (et supérieur), il est nécessaire de vérifier si le fichier manipulé ne se trouve pas dans un des répertoires système (répertoire de Windows ou répertoire "Program Files").
En effet, sous Windows Vista (et supérieur), avec le mécanisme de l'UAC (contrôle des comptes utilisateurs) activé, il est nécessaire d'avoir les privilèges administrateur pour manipuler / modifier des fichiers présents dans les répertoires systèmes (répertoire de Windows ou répertoire "Program Files").
Conseil de programmation : Si vous devez manipuler / modifier des fichiers, sans avoir besoin de privilèges administrateur, il est conseillé :
  • de ne pas écrire dans le répertoire de Windows ou dans le répertoire "Program Files",
  • d'utiliser le répertoire système correspondant à l'application (connu par la fonction SysRep par exemple avec la constante srAppDataCommun).

Création de répertoires lors de la copie

  • Si un des répertoires du chemin destination n'existe pas, il est automatiquement créé.
  • WINDEVWEBDEV - Code ServeurEtats et RequêtesAndroidWidget AndroidiPhone/iPadUniversal Windows 10 AppJavaAjaxCode Utilisateur (MCU) Si le fichier source correspond à l'ensemble des fichiers d'un répertoire (par exemple, C:\Temp\*.*), il faut utiliser la constante frRécursif afin de créer les sous-répertoires dans la destination (et copier leur contenu).
Remarque : Pour effectuer des copies de répertoires, il est également possible d'utiliser la fonction fRepCopie.
Windows Mobile

Équivalence

Le fonctionnement de fCopieFichier est équivalent au fonctionnement de ceCopieFichier.
Seule différence :
  • la fonction fCopieFichier manipule des fichiers présents sur le Pocket PC à partir d'une application WINDEV Mobile.
  • la fonction ceCopieFichier manipule des fichiers présents sur le Pocket PC à partir d'une application WINDEV standard.
Liste des exemples associés :
Manipulation de fichiers texte Exemples unitaires (WINDEV) : Manipulation de fichiers texte
[ + ] Manipulation des fichiers "texte" avec WINDEV :
- Créer un fichier texte
- Ecrire dans un fichier texte
- Lire dans un fichier texte
Manipulation de fichiers texte Exemples unitaires (WEBDEV) : Manipulation de fichiers texte
[ + ] Manipulation des fichiers "non HFSQL" avec WEBDEV (création d'un fichier texte, écriture et lecture)
Manipulation de fichiers texte Exemples unitaires (WINDEV Mobile) : Manipulation de fichiers texte
[ + ] Manipulation des fichiers externes de type "texte" :
- Créer un fichier texte
- Ecrire dans un fichier texte
- Lire dans un fichier texte
Composante : wd240std.dll
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire