【发布时间】:2010-08-11 07:55:50
【问题描述】:
我正在编写一个在目录中启动随机文件的程序。该文件可以是任何时间的,但主要是视频或图像文件。 每次我启动一个文件时,我都想关闭前一个打开的文件。 代码是:
string FolderSelected = "";
string FileName = "";
Process proc;
List<string> FilesDisplayed = new List<string>();
public Form1()
{
InitializeComponent();
}
private void button2_Click(object sender, EventArgs e)
{
if (FolderSelected == string.Empty)
FolderSelected = Properties.Settings.Default.FilesDefaultFolder;
if (proc != null)
{
proc.CloseMainWindow();
proc.Close();
}
FileName = FetchRandomFile();
proc = Process.Start(FileName);
}
问题是,我不断收到 proc = null (文件已正确启动),我无法获取先前打开的进程以关闭它。我知道 .NET 重用进程,这就是它返回 Null 的原因,但我需要覆盖此行为。 请帮忙, 伙计。
【问题讨论】: