|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
![]() ![]() ![]() Ingénieur développement logiciels Inscription : janvier 2004 Messages : 8 880 ![]() |
Bonjour,
Je vous propose un nouvel élément à utiliser : [Delphi]Tester si fichier déjà ouvert Tester si un fichier est déjà ouvert par une autre application. NOTES : Le principe de détection est basé sur un essai d'ouverture et le test du code d'erreur 32 indiquant une violation de partage. Qu'en pensez-vous ? |
|
00
|
|
|
#2 | ||
|
Membre chevronné
![]() Charly Ingénieur TP Inscription : décembre 2006 Messages : 582 ![]() |
Bonjour,
Pour ma part, j'utilise cette fonction (qui peut surement être perfectionnée) : Code :
Charly |
||
|
|
00
|
|
|
#3 |
|
Membre émérite
![]() Inscription : avril 2008 Messages : 863 ![]() |
Aussi un truc de genre
Code :
GetFileAttributes(PChar(Filename))<>INVALID_FILE_ATTRIBUTES |
|
|
00
|
|
|
#4 | ||
![]() ![]() Inscription : septembre 2008 Messages : 2 857 ![]() |
Ce code ne dit pas que le fichier est déjà ouvert, mais qu'il peut l'être en écriture
Un fichier ouvert en lecture ne sera pas détecté, à moins qu'il l'ait été en mode exclusif (fmShareExclusive). A noter aussi que Reset ne renvoi pas d'erreur sur un fichier ouvert en mode fmOpenRead or fmShareDenyWrite (Par contre Write se plante normalement !)Enfin une erreur autant dans le code de Nono40 que dans celui de Charly910 (mais en pire puisque le case ne fonctionne plus du tout) : IOResult ne peut être lu qu'une seule fois. Il est reseté après le premier appel ! Code :
|
||
|
|
00
|
|
|
#5 | ||
|
Membre Expert
![]() Inscription : septembre 2009 Messages : 980 ![]() |
Code :
__________________
[ Sources et programmes de Dr.Who | FAQ Delphi | FAQ Pascal | Règlement | Contactez l'équipe ] Ma messagerie n'est pas la succursale du forum... merci! |
||
|
|
10
|
|
|
#6 | ||
|
Membre Expert
![]() Dev/For/Vte/Ass Inscription : août 2008 Messages : 1 499 ![]() |
Salut,
Sur mon programme pour empêcher d'ouvrir 2 fois l'application sur le même poste je fais ceci dans le DPR du programme. Code :
|
||
|
|
00
|
Copyright © 2000-2013 - www.developpez.com