PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV (précédentes versions) → Recherche Solution à un Pb.  ( peut etre API ???)
Recherche Solution à un Pb. ( peut etre API ???)
Débuté par Gerard, 08 aoû. 2003 12:30 - 1 réponse
Posté le 08 août 2003 - 12:30
Bonjour,

Dans une appli de type GED, je fais des sauvegardes de fichier local divers
(non windev) vers un serveur.

Sous Win2000, il arrive que la fonction "fcopiefichier" ne s'exécute pas
alors que apparemment, ni le fichier origine, ni le fichier destination ne
sont verrouilles par une appli quelquonque.

Existe-t-il un moyen (API ou autre) pour connaître la vrai raison du
verrouillage du fichier afin de donner à l'utilisateur un message plus
explicite.

Merci.

Gérard.
Posté le 08 août 2003 - 18:07
"Gerard" <gkcc@wanadoo.fr> wrote:
Bonjour,

Dans une appli de type GED, je fais des sauvegardes de fichier local divers
(non windev) vers un serveur.

Sous Win2000, il arrive que la fonction "fcopiefichier" ne s'exécute pas
alors que apparemment, ni le fichier origine, ni le fichier destination

ne
sont verrouilles par une appli quelquonque.

Existe-t-il un moyen (API ou autre) pour connaître la vrai raison du
verrouillage du fichier afin de donner à l'utilisateur un message plus
explicite.

Merci.

Gérard.



En API :
CopyFile suvi d'un GetLastError suivi d'un FormatMessage

PYT

CopyFile

The CopyFile function copies an existing file to a new file.

The CopyFileEx function provides two additional capabilities. CopyFileEx
can call a specified callback function each time a portion of the copy operation
is completed, and CopyFileEx can be canceled during the copy operation.


BOOL CopyFile(
LPCTSTR lpExistingFileName,
LPCTSTR lpNewFileName,
BOOL bFailIfExists
);


GetLastError

The GetLastError function retrieves the calling thread's last-error code
value. The last-error code is maintained on a per-thread basis. Multiple
threads do not overwrite each other's last-error code.

Visual Basic: Applications should call err.LastDllError instead of GetLastError.


DWORD GetLastError(void);

Parameters
This function has no parameters.


FormatMessage

The FormatMessage function formats a message string. The function requires
a message definition as input. The message definition can come from a buffer
passed into the function. It can come from a message table resource in an
already-loaded module. Or the caller can ask the function to search the system's
message table resource(s) for the message definition. The function finds
the message definition in a message table resource based on a message identifier
and a language identifier. The function copies the formatted message text
to an output buffer, processing any embedded insert sequences if requested.


DWORD FormatMessage(
DWORD dwFlags,
LPCVOID lpSource,
DWORD dwMessageId,
DWORD dwLanguageId,
LPTSTR lpBuffer,
DWORD nSize,
va_list* Arguments
);

PYT