IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Delphi Discussion :

Copier un fichier à distance avec adresse IP


Sujet :

Langage Delphi

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2010
    Messages
    945
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2010
    Messages : 945
    Points : 123
    Points
    123
    Par défaut Copier un fichier à distance avec adresse IP
    Bonjour à tous ,

    Je dois copier régulièrement des nouveaux fichiers dans une base de données installée en réseau, et je voudrais automatiser ça mais je ne sais pas quelle commande utiliser. J'ai essayé CopyFile mais ça ne marche pas.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .CopyFile( 'd:\dossier\dsd.fdb', '192.168.1.10:C:\bd\dsd.fdb', overwrite:=false)

  2. #2
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 563
    Points : 25 165
    Points
    25 165
    Par défaut
    C'est un accès réseau normal donc "\\server\shareddir"
    Faut pas bosser un dimanche, tu en oublies tes bases !

    Le C est accessible ?
    "\\192.168.1.10\c$\bd\"

    Le C n'est pas accessible (ce qui me semble bcp mieux)
    "\\192.168.1.10\bdshare"

    bdshare étant un partage sur "C:\bd\"

  3. #3
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2010
    Messages
    945
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2010
    Messages : 945
    Points : 123
    Points
    123
    Par défaut
    bonjour,
    j'ai refait la commande
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CopyFile( 'd:\dossier\dsd.fdb', '\\192.168.1.10\C:\bd\dsd.fdb', overwrite:=false)
    mais ça marche toujours pas

  4. #4
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 563
    Points : 25 165
    Points
    25 165
    Par défaut
    Normal, tu as laissé "\\192.168.1.10\C:\" alors qu'il faut utiliser un partage comme C$ "\\192.168.1.10\C$\"
    Avant de le faire en DELPHI, tu devrais vérifier tes chemins dans l'Explorateur Windows
    Depuis ton poste, tu le fais manuellement, tu dois bien maitriser un peu plus que ça tes chemins UNC pour l'accès à ta base

  5. #5
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 097
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 097
    Points : 41 083
    Points
    41 083
    Billets dans le blog
    62
    Par défaut
    Bonjour,

    Je doit avouer être perplexe !
    le titre : Copier un fichier ça je comprend, à distance j'ai des doutes s'agit-il d'un poste sur réseau local (ce qui semble être le cas au vu de l'adresse) ou un poste accessible via la toile ?

    Où je me pose encore plus de questions, c'est dans le corps du message !
    Citation Envoyé par chekkal Voir le message
    Je dois copier régulièrement des nouveaux fichiers dans une base de données installée en réseau,
    on a à faire avec une base Firebird (selon l'extension), copier des fichiers dans une base pour moi veux dire dans un blob (texte ou binaire) de cette base, ce que ne fera pas copyfile
    ce serait plutôt faire une sauvegarde sur un autre poste ? mais dans ce cas, il est très mal avisé de faire une copie du fichier fdb, il vaut mieux faire un backup de la base et envoyer ce backup sur le poste.

    Je n'ose pas penser que c'est en fait une réplication de la base de données que vous souhaitez

  6. #6
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2010
    Messages
    945
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2010
    Messages : 945
    Points : 123
    Points
    123
    Par défaut
    Normal, tu as laissé "\\192.168.1.10\C:\" alors qu'il faut utiliser un partage comme C$ "\\192.168.1.10\C$\"
    Je ne comprend pas!. le dossier cible se trouve dans "e:\gestion2017".

    on a à faire avec une base Firebird (selon l'extension), copier des fichiers dans une base pour moi veux dire dans un blob (texte ou binaire) de cette base, ce que ne fera pas copyfile
    ce serait plutôt faire une sauvegarde sur un autre poste ? mais dans ce cas, il est très mal avisé de faire une copie du fichier fdb, il vaut mieux faire un backup de la base et envoyer ce backup sur le poste.

    Je n'ose pas penser que c'est en fait une réplication de la base de données que vous souhaitez
    ma question c'est comment copier des fichiers d'un poste vers un autre poste dans un réseau local.

  7. #7
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 563
    Points : 25 165
    Points
    25 165
    Par défaut
    Tout comme on le ferait via l'explorateur avec les chemins corrects sur des partages avec les autorisations valables

    "e:\gestion2017", tu ne l'avais jamais mentionné, tu es très confus

  8. #8
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2010
    Messages
    945
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2010
    Messages : 945
    Points : 123
    Points
    123
    Par défaut
    je m’excuse , c'est vrai j'ai écrit "c:\bd" au lieu d’écrire "e:\gestion2017", maintenant ce je comprend pas c'est le "c$"

  9. #9
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 871
    Points : 11 361
    Points
    11 361
    Billets dans le blog
    6
    Par défaut
    Bonjour,
    Je pense que tu dois donner l'accès à ce répertoire à partir du réseau en le partageant sous un nom que tu lui attribueras. Ce doit être ce nom qu'il faut indiquer en le postfixant d'un dollar pour indiquer sa nature dans le chemin.
    A vérifier...

  10. #10
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 097
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 097
    Points : 41 083
    Points
    41 083
    Billets dans le blog
    62
    Par défaut
    Bonjour,
    Citation Envoyé par chekkal Voir le message
    maintenant ce je comprend pas c'est le "c$"
    c'est un partage administratif, dans le cas de C$ : partage du volume C:
    plus sur les partages administratifs ?

    Toutefois, au niveau sécurité, ça laisse à désirer, ce type de partage fait la part belle aux ransomwares qui cryptent les fichiers, passer par ftp est certainement mieux.
    Vous n'avez pas tenu compte de ma remarque sur le fait que copier un fichier .fdb était une erreur ... dommage

  11. #11
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 563
    Points : 25 165
    Points
    25 165
    Par défaut
    Citation Envoyé par chekkal Voir le message
    je m’excuse , c'est vrai j'ai écrit "c:\bd" au lieu d’écrire "e:\gestion2017", maintenant ce je comprend pas c'est le "c$"
    Va voir ton administrateur réseau, il va devoir t'expliquer les accès à tes serveurs et comment les sécuriser
    e: est un disque serveur ou un montage en local d'un partage réseau ?

    Citation Envoyé par SergioMaster Voir le message
    Vous n'avez pas tenu compte de ma remarque sur le fait que copier un fichier .fdb était une erreur ... dommage
    Sergio, déjà que la notion de partage n'est pas assimilé, tu veux lui parler de Replication à chaud via IBExpert, le pauvre

  12. #12
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2010
    Messages
    945
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2010
    Messages : 945
    Points : 123
    Points
    123
    Par défaut
    Sergio, déjà que la notion de partage n'est pas assimilé, tu veux lui parler de Replication à chaud via IBExpert, le pauvre
    pour accéder à ma base de données via par exple IBexpert j'indique comme chemin "192.168.1.10:e:\gestion2017", alors pour quoi avec copyfile c'est pas la même chose.

  13. #13
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 097
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 097
    Points : 41 083
    Points
    41 083
    Billets dans le blog
    62
    Par défaut
    Citation Envoyé par ShaiLeTroll Voir le message
    Sergio, déjà que la notion de partage n'est pas assimilé, tu veux lui parler de Replication à chaud via IBExpert, le pauvre
    je ne faisais pas allusion à la réplication, ni utilisation de IBExpert.
    Je voulais surtout insister sur le fait que copier une base de données Firebird est une mauvaise idée surtout en environnement réseau contrairement à un backup (ou nbackup) qui peut se faire à chaud et sans soucis. Cela ne prend pas plus de temps et c'est certainement beaucoup plus efficace lorsqu'il s'agira de récupérer une base de données en cas de soucis.
    Et puisque l'on est dans un forum Delphi, je signale que plusieurs composants peuvent faire ces backups (UIB, Firedac ....).
    J'ai parlé de réplication uniquement parce que l'ouverture de la discussion "copier des données dans une base de données" était loin d'être claire !
    En fait, chekkal encombre le problème, puisqu'il s'agit d'une simple copie de fichier sur un support réseau.
    C'est vrai qu'ensuite j'en rajoute une couche avec ces histoires de partage et de ransomeware l'expérience
    Citation Envoyé par chekkal
    pour accéder à ma base de données via par exple IBexpert j'indique comme chemin "192.168.1.10:e:\gestion2017", alors pour quoi avec copyfile c'est pas la même chose.
    tout simplement parce que ibexpert traite votre chaine pour construire un chemin pour se connecter à la base de données et que cela n'a rien à voir avec un chemin "windows" . En fait vous indiquez que vous utilisez le serveur Firebird situé sur le poste dont l'adresse IP est 192.168.1.10 et indiquez à ce serveur d'utiliser la base de données nommée E:\gestion2017\dsd.fdb (en utilisant le port 3050 pour s'y connecter).
    Encore d'un point de vue SECURITE ,vous auriez d'ailleurs intérêt à utiliser un alias plutôt que le répertoire et le nom de la base de données et, NON, E:\gestion2017 n'a pas besoin d'être partagé pour pouvoir s'y connecter c'est même déconseillé

  14. #14
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 563
    Points : 25 165
    Points
    25 165
    Par défaut
    Pour ajouter un complément à la réponse de SergioMaster

    Tu as un poste client
    Tu as un poste serveur

    le client va interroger le serveur à l'IP 192.168.1.10 (Port 3050)
    le client indique à son serveur que la base de donnée est stocké chez lui dans "E:\gestion2017\"
    Le serveur et le client utilise un protocole qui est spécifique à InterBase, le client n'as pas besoin d'accéder via le FileSystem au fichier car il passe via le Serveur IB qui met en place un AUTRE mécanisme d'échange

    C'est surement ce qui est obscur pour toi que cela fonctionne en IB mais pas en FileSystem

Discussions similaires

  1. fichier vbs pour copier coller fichier excel avec nom dynamique
    Par fulgurr dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 23/09/2016, 17h24
  2. Editer des fichiers à distance avec Netbeans
    Par proDZ dans le forum NetBeans
    Réponses: 2
    Dernier message: 29/10/2010, 21h31
  3. copier un fichier dll avec java
    Par info21 dans le forum Applets
    Réponses: 1
    Dernier message: 08/04/2010, 16h14
  4. Réponses: 3
    Dernier message: 23/09/2006, 15h19
  5. lecture/ecriture de fichier à distance avec indentification
    Par Mat1664 dans le forum Entrée/Sortie
    Réponses: 3
    Dernier message: 22/05/2006, 17h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo