OVH Cloud OVH Cloud

The process cannot access the file because its being used by another process

1 réponse
Avatar
Eric
Bonjour,

j'obtiens cette erreur en utilisant la fonction CreateFile de l'API de
la façon suivante:

-------------------------------------------------------------------------
Public Function IsFileAccessRead(ByVal insFilePath As String) As Boolean
Dim hFile As Long, lLastError As Long

IsFileAccessRead = False

' Create a handle to the specified file
hFile = CreateFile(insFilePath, GENERIC_READ, 0, ByVal 0&,
OPEN_EXISTING, 0, ByVal 0&)
If hFile = -1 Or hFile = 0 Then
lLastError = Err.LastDllError
Err.Raise lLastError, "IsFileAccessRead",
GetErrorMessage(lLastError)
Else
CloseHandle hFile
IsFileAccessRead = True
End If

End Function
-------------------------------------------------------------------------

Pourtant j'ai bien tous les droits sur le fichier que je tente de lire
et je suis sûr qu'aucun autre programme n'utilise actuellement ce
fichier. D'ailleurs l'erreur n'est pas systématique.

Que puis-je faire pour n'avoir cette erreur que quand cela est justifié?

1 réponse

Avatar
Patrice Henrio
je ne sais pas si ça peut aider ou même si ça a à voir avec ce cas mais j'ai
eu quelque chose du même genre après avoir transféré mes fichiers d'un CD à
un ordinateur. J'ai finalement compris que ceux-ci étaient passés en lecture
seule après le transit par le CD. Une fois remis les attributs, l'erreur a
disparu.


"Eric" a écrit dans le message de news:
ud5NP08$
Bonjour,

j'obtiens cette erreur en utilisant la fonction CreateFile de l'API de la
façon suivante:

-------------------------------------------------------------------------
Public Function IsFileAccessRead(ByVal insFilePath As String) As Boolean
Dim hFile As Long, lLastError As Long

IsFileAccessRead = False

' Create a handle to the specified file
hFile = CreateFile(insFilePath, GENERIC_READ, 0, ByVal 0&,
OPEN_EXISTING, 0, ByVal 0&)
If hFile = -1 Or hFile = 0 Then
lLastError = Err.LastDllError
Err.Raise lLastError, "IsFileAccessRead",
GetErrorMessage(lLastError)
Else
CloseHandle hFile
IsFileAccessRead = True
End If

End Function
-------------------------------------------------------------------------

Pourtant j'ai bien tous les droits sur le fichier que je tente de lire et
je suis sûr qu'aucun autre programme n'utilise actuellement ce fichier.
D'ailleurs l'erreur n'est pas systématique.

Que puis-je faire pour n'avoir cette erreur que quand cela est justifié?