我怎样才能模拟“锁定”的状态?文件(具有写锁的文件)

发布于 2024-11-04 18:54:17 字数 104 浏览 7 评论 0原文

我正在尝试调试用户偶尔会尝试打开的锁定文件的问题。该代码似乎具有正确的异常处理,但用户仍然报告看到错误消息。如何模拟锁定的文件以便我可以自己调试它?

编辑:对于 Windows。

I am trying to debug a problem where users occasionally have locked files which they try to open. The code appears to have correct exception handling but users are still reporting seeing error messages. How can I simulate a locked file so that I can debug this myself?

EDIT: For Windows.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

千秋岁 2024-11-11 18:54:17

试试这个:

( >&2 pause ) >> yourfile.txt

>>追加模式打开yourfile.txt

请参阅供参考

try this:

( >&2 pause ) >> yourfile.txt

>> opens yourfile.txt in append mode

see this for a reference

娇妻 2024-11-11 18:54:17

视情况而定,但以防万一,MS 字锁
如果您想知道您的应用程序是否锁定文件并且不释放锁定:
只需修改您的应用程序(以创建测试应用程序),并且永远不要关闭文件(并保持其运行)

depends, but in case, MS word locks
if you are wonderig if your application lock files and it do not relase locks:
just modify a bit your aplication (to create a testapp) and never close the file (and keep it runnig)

一花一树开 2024-11-11 18:54:17

我使用 Windows API 中的 LockFileEx 函数在 Python 中编写单元测试。这对我来说效果很好(带有锁定目标的 shutdown.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

I used LockFileEx function from the Windows API to write a unittest in Python. This worked well for me (shutil.copy() with a locked target fails).

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

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

终止放荡 2024-11-11 18:54:17

我正在使用此命令提示符

type yourfile.txt | more

yourfile.txt 中插入一个非常长的“几页”文本,并希望通过 | 进行管道传输more 来批量插入。
但是文件似乎被锁定,有什么原因吗?

I am using this command prompt

type yourfile.txt | more

to insert inside yourfile.txt a very long text of "few pages" and want to pipe via | more to batch the insertion.
However the file seems to lock, any reason why?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文