Pas d'inquiétude, avec PBAdonf, c'est dans la poche ! ^^

Le forum (ô combien francophone) des utilisateurs de Powerbuilder.

Recherche rapide

Annonce

Certaines rubriques, dont des cours, sont uniquement visibles par les membres du forum ^^.
Dans la rubrique Liens & Références, vous avez accès à un sommaire de téléchargement, profitez-en !
Il existe maintenant un nouveau TOPIC "Votre CV en Ligne" accessible uniquement par demande.

#1 23-02-2010 14:52:13

sbouvetJD  
Chasseur d'y voir ?
Lieu: LYON
Date d'inscription: 29-03-2007
Messages: 185
Pépites: 147,483,921
Banque: 13,317,684,827,902,405
Site web

[RESOLU] Problème de FileDelete

Bonjour,

Je dispose d'une application qui déplace en renommant des fichiers d'un serveur vers un autre.

Code: pb

if FileExists(maDestination) then 
    lb_ret = FileDelete(maDestination)
end if
lb_ret = FileMove(maSource, maDestination)

Or il apparait que le FileDelete ne fonctionne pas (lb_ret = False et le fichier reste bien présent). Physiquement je peux bien supprimer le fichier cependant, et le FileMove fonctionne si le fichier n'existe pas ; en outre le FileDelete ne fonctionne pas non plus sur le serveur où se trouve maSource.
J'ai essayé de remplacer ces fonctions par celles de kernel32.dll

Code: pb

if FileExists(maDestination) then 
    lb_ret = DeleteFileA(maDestination)
end if
lb_ret = MoveFileA(maSource, maDestination)

Sans plus de résultat.
Les deux dossiers ont la sécurité la plus basse qui soit et "Everyone" a le contrôle total. Les fichiers sont en lecture seule, mais cela a-t-il une incidence ?
Des idées ?

Dernière modification par sbouvetJD (24-02-2010 14:16:15)

Hors ligne

 

#2 23-02-2010 14:54:48

pick ouic  
La bourse ou la vie ^^
Award: gearotter
Lieu: Massy-Verrières
Date d'inscription: 29-05-2006
Messages: 4658
Pépites: 942
Banque: 2,147,483,647
Site web

Re: [RESOLU] Problème de FileDelete

il y a des espaces au niveau des noms de repertoires ?


Connaitre son ignorance est une grande part de la connaissance.
http://animegifs.free.fr/anime/mazinger/mazinger.gif

Hors ligne

 

#3 23-02-2010 15:04:19

sbouvetJD  
Chasseur d'y voir ?
Lieu: LYON
Date d'inscription: 29-03-2007
Messages: 185
Pépites: 147,483,921
Banque: 13,317,684,827,902,405
Site web

Re: [RESOLU] Problème de FileDelete

Non, ni dans les noms de dossiers, ni dans les noms de fichiers.

Hors ligne

 

#4 23-02-2010 15:09:45

Chrnico  
N2I Power
Award: bf
Lieu: Vanves
Date d'inscription: 05-06-2007
Messages: 1206
Pépites: 12,884,901,943
Banque: 9,223,372,036,854,776,000
Site web

Re: [RESOLU] Problème de FileDelete

Les fichiers ne seraient pas ouverts (par ton appli ou par une autres) au moment du delete ?...


Tu dois donc tu peux (Kant)

Tu peux donc tu dois (N2i)
www.n2i.fr

Hors ligne

 

#5 23-02-2010 15:19:54

sbouvetJD  
Chasseur d'y voir ?
Lieu: LYON
Date d'inscription: 29-03-2007
Messages: 185
Pépites: 147,483,921
Banque: 13,317,684,827,902,405
Site web

Re: [RESOLU] Problème de FileDelete

Non, et ce qui est bizarre c'est que le FileDelete sur le serveur maSource ne fonctionne pas mais le FileMove si (or le FileMove est l'équivalent d'une copie puis d'une suppression non ?)

Hors ligne

 

#6 23-02-2010 15:27:40

sbouvetJD  
Chasseur d'y voir ?
Lieu: LYON
Date d'inscription: 29-03-2007
Messages: 185
Pépites: 147,483,921
Banque: 13,317,684,827,902,405
Site web

Re: [RESOLU] Problème de FileDelete

Par contre je définis les chemins en absolu : \\MONSERVEUR\MONDOSSIERPARTAGE\...
Le FileDelete fonctionne en local

EUREKA

En fait le problème vient de l'attribut "Lecture Seule". On ne peut faire de FileDelete sur un fichier en readonly apparemment...
Comment pourrais-je résoudre ce problème ? Il faudrait qu'au moment de la copie, l'attribut ne soit pas lecture seule...

Hors ligne

 

#7 23-02-2010 15:38:53

nico  
Modérateur
Award: bf
Lieu: Plélan le grand
Date d'inscription: 08-02-2007
Messages: 273
Pépites: 13
Banque: 9,223,372,036,854,776,000

Re: [RESOLU] Problème de FileDelete

Il y a la commande DOS ATTRIB -R

Hors ligne

 

#8 24-02-2010 07:33:18

Aloneg  
Membre Geek
Date d'inscription: 14-02-2007
Messages: 30
Pépites: 1,182
Banque: 37,934,892,619

Re: [RESOLU] Problème de FileDelete

Déclaration de la fonction externe

Code: PB

Function boolean SetFileAttributes ( string lpFileName, ulong dwFileAttributes) Library "kernel32.dll" Alias For "SetFileAttributesW"


et appel dans le code :

Code: PB

IF NOT SetFileAttributes(ls_chemin_cible, 128) THEN
   Messagebox("Copie", "Impossible d'enlever la lecture seule sur le fichier" + ls_chemin_cible)
END IF


Après la copie, il est possible de remettre la lecture seule :

Code: PB

IF NOT SetFileAttributes(ls_chemin_cible, 1) THEN
   Messagebox("Copie", "Impossible de mettre la lecture seule sur le fichier" + ls_chemin_cible)
END IF

Dernière modification par Aloneg (24-02-2010 07:35:17)

Hors ligne

 

#9 24-02-2010 14:16:02

sbouvetJD  
Chasseur d'y voir ?
Lieu: LYON
Date d'inscription: 29-03-2007
Messages: 185
Pépites: 147,483,921
Banque: 13,317,684,827,902,405
Site web

Re: [RESOLU] Problème de FileDelete

Merci de ces réponses. Je ne m'explique toujours pas pourquoi le Move fonctionnait et pas le Delete... Mais mon problème est résolu !

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB 1.2.22