当我快速按两次输入应用程序时,第二次启动将崩溃。我在日志中找到了原因:
“进程无法访问文件'.. \ filemanifest.xml',因为它 正在被另一个进程使用。“
我已经在很多网站上进行了研究,只得到了如何阻止应用程序两次启动的答案,而不是如何允许应用程序多次启动。感谢您的所有帮助。
如何在不崩溃的情况下让我的应用运行两次?
答案 0 :(得分:0)
添加到您的应用程序metod正在使用检查文件:
protected virtual bool IsFileLocked(FileInfo file)
{
FileStream stream = null;
try
{
stream = file.Open(FileMode.Open, FileAccess.ReadWrite, FileShare.None);
}
catch (IOException)
{
//the file is unavailable because it is:
//still being written to
//or being processed by another thread
//or does not exist (has already been processed)
return true;
}
finally
{
if (stream != null)
stream.Close();
}
//file is not locked
return false;
}
只是
for (int i = 0; i < 100; i++)
{
if (IsFileLocked(file))
{
//Add what you want
Thread.Sleep(1000);
}
else
{
//Add what you want
return;
}
}