delphi – 日志文件监视器

是否可以打开文本文件并在另一个应用程序更新文件时读取内容,这样它不会导致锁定冲突?

我需要监视来自一个应用程序的日志文件,每次事件发生时由另一个应用程序更新.

我在尝试阅读之前检查文件是否正在使用,但这似乎并不适用于所有情况.

谢谢,彼得

解决方法

这取决于第一个应用程序如何打开该文件.

即,当调用CreateFile API打开文件时,会有dwShareMode param告诉api如何打开它(如果给出0,则无法从其他应用程序IIRC访问它).
否则从该文件读取应该没有问题.
如果我没有弄错,要检查该文件是否被打开只读你可以打电话
就像是

CreateFile(pchar(fName),GENERIC_READ or GENERIC_WRITE,nil,OPEN_EXISTING,FILE_ATTRIBUTE_norMAL,0) ;

相关文章

 从网上看到《Delphi API HOOK完全说明》这篇文章,基本上都...
  从网上看到《Delphi API HOOK完全说明》这篇文章,基本上...
ffmpeg 是一套强大的开源的多媒体库 一般都是用 c/c+&#x...
32位CPU所含有的寄存器有:4个数据寄存器(EAX、EBX、ECX和ED...
1 mov dst, src dst是目的操作数,src是源操作数,指令实现的...