特定の.txtファイルがメモ帳で開かれているかどうかを確認する方法は?
ここに記載されている解決策を試しました
ただし、Word および pdf ファイルでは正常に機能しますが、メモ帳で開いた txt ファイルでは機能しません。
ここに私が書いたコードがあります。
public bool IsFileOpen(string strFileName)
{
bool retVal = false;
try
{
if (File.Exists(pstrFileName))
{
using (FileStream stream = File.OpenWrite(pstrFileName))
{
try
{
}
catch (IOException)
{
retVal = true;
}
finally
{
stream.Close();
stream.Dispose();
}
}
}
}
catch (IOException)
{ //file is opened at another location
retVal = true;
}
catch (UnauthorizedAccessException)
{ //Bypass this exception since this is due to the file is being set to read-only
}
return retVal;
}
私はここに何かが欠けています.??
私の要件: VSS と同様に機能するアプリケーションがあります。ユーザーが特定のファイルをチェックアウトして開くと、開いている間に同じファイルをチェックインしようとします。アプリケーションは警告メッセージをスローすると想定されています。そのために、上記の機能を使用しました。word と pdf で正常に動作します。