The process cannot access the file because its being used by another process
1 réponse
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é?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
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é?
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" <ericbellina@wanadoo.fr> a écrit dans le message de news:
ud5NP08$FHA.3344@TK2MSFTNGP10.phx.gbl...
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é?
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é?