如何判断文件是否被打开?
2shcm 2005-10-07 08:42:26 请问如何判断文件是否被打开?
例如:我的程序关联了一个.txt文件,双击打开文件时如何判断该文件是否被其它程序打开了呢?
我用过下面代码:
---------
判断文件是否在使用:
bool IsFileInUse(String FileName)
{
bool Result;
HANDLE Handle = CreateFile(FileName.c_str(), GENERIC_READ | GENERIC_WRITE,
0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
Result = INVALID_HANDLE_VALUE == Handle;
if (!Result)
CloseHandle(Handle);
return Result;
}
-----------
它能单独判断该文件是否被其它程序打开,但用鼠标双击打开文件时似乎不能判断该文件是否被其它程序打开。以上我是在CMyApp::InitInstance()里判断的。