20

ユーザーが開こうとしているファイルをロックしていることがあるという問題をデバッグしようとしています。コードには正しい例外処理があるように見えますが、ユーザーは依然としてエラーメッセージが表示されていると報告しています。これを自分でデバッグできるように、ロックされたファイルをシミュレートするにはどうすればよいですか?

編集:Windowsの場合。

4

4 に答える 4

31

これを試して:

( >&2 pause ) >> yourfile.txt

>>追加モードyourfile.txtで開きます

参考のためにこれを参照してください

于 2015-05-11T18:57:11.370 に答える
7

依存しますが、場合によっては、アプリケーションがファイルをロックし、ロックを解放しないかどうか疑問に思っている場合は、MS Wordがロック
します
。アプリケーションを少し変更して(testappを作成するため)、ファイルを閉じないでください(実行を続けてください)。

于 2011-05-02T18:01:29.727 に答える
0

Windows APIのLockFileEx関数を使用して、Pythonで単体テストを記述しました。これは私にとってはうまくいきました(ターゲットがロックされているshutil.copy()は失敗します)。

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())

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

于 2016-09-14T07:56:22.350 に答える
0

このコマンドプロンプトを使用しています

type yourfile.txt | more

yourfile.txt「数ページ」の非常に長いテキスト内に挿入し| more、挿入をバッチ処理するためにパイプで送信します。ただし、ファイルがロックされているようですが、理由は何ですか?

于 2019-12-10T11:27:21.660 に答える