我使用c#在Windows应用程序中编程。
我想使用this.close();
关闭一个应用程序我的应用程序窗口已关闭。但是我尝试删除该应用程序文件,它显示“由另一个进程使用的文件”?
注意:我也在该应用程序中使用backgroundrunner。如果它对上述问题有任何疑问?
答案 0 :(得分:1)
尝试使用Application.Exit关闭您的应用程序。
通知所有消息泵必须终止,然后关闭 消息处理完毕后的所有应用程序窗口。
答案 1 :(得分:1)
当您使用this.Close()
时,您正在关闭窗口表单但不关闭应用程序。
即使您明确关闭表单,您在应用程序中发出的后台运行程序仍将在场景后面运行。这就是你收到信息的原因。
如果忙于进程并且在关闭应用程序之前正常处理它以终止/完成请求,您还可能需要检查后台工作程序的类型。 Application.Exit
前台线程将继续终止,后台不会。
答案 2 :(得分:1)
在退出main方法之前尝试调用此函数。
workerThread是后台工作者
public void Abort()
{
if (workerThread != null)
{
workerThread.Abort();
workerThread = null;
}
}