Domanda

Sto cercando di eseguire il debug di un problema in cui gli utenti hanno occasionalmente file bloccato che cercano di aprire. Il codice sembra avere una corretta gestione delle eccezioni, ma gli utenti stanno ancora segnalando vedendo messaggi di errore. Come posso simulare un file bloccato in modo da poter eseguire il debug da solo?

Modifica: per Windows.

È stato utile?

Soluzione

Dipende, ma nel caso in cui i blocchi di Word MS
Se sei meravigliato se i file di blocco dell'applicazione e non inoltrano i blocchi:
Basta modificare un po 'la tua apice (per creare un testApp) e non chiudere mai il file (e mantenerlo runnig)

Altri suggerimenti

prova questo:

( >&2 pause ) >> yourfile.txt

>> si apre yourfile.txt in aggiungere modalità

vedere questo per un riferimento

Ho usato la funzione Lockfileex dall'API di Windows per scrivere un unittest in Python. Questo ha funzionato bene per me (shutil.Copy () con un bersaglio bloccato fallisce).

import win32con
import win32file
import pywintypes

p = "yourfile.txt"
f = file(p, "w")
hfile = win32file._get_osfhandle(f.fileno())
flags = win32con.LOCKFILE_EXCLUSIVE_LOCK | win32con.LOCKFILE_FAIL_IMMEDIATELY

win32file.LockFileEx(hfile, flags, 0, 0xffff0000, pywintypes.OVERLAPPED())

Vedere: https://msdn.microsoft.com/en-us/library/windows/desktop/aa365203%28v=vs.85%29.aspx

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top