熱が必要なので、複数の Word 文書を開くデスクトップ アプリケーションを 1 つ作成しました。しかし、ここでは、2 番目のドキュメントが開いているときに、最初のドキュメントの exited イベントがそのドキュメントを閉じずに発生するという 1 つの問題に直面しています。
以下は私のコードです
private void CreateNewProcessForEachDocument()
{
try
{
docProcess = new Process();
docProcess.StartInfo = new ProcessStartInfo(string.Concat(folderPath, fileName));
docProcess.EnableRaisingEvents = true;
docProcess.Exited += new EventHandler(docProcess_Exited);
docProcess.Start();
docProcess.WaitForExit();
docProcess.Close();
}
catch (Exception ex)
{
throw ex;
}
}
private void docProcess_Exited(object sender, EventArgs e)
{
try
{
var client = new ValidateClientClient();
byte[] fileData = File.ReadAllBytes(string.Concat(folderPath, fileName));
bool fileSaved = client.SaveDocument(fileData, fileName, username);
string filePath = Path.GetFullPath(string.Concat(folderPath, fileName));
if (fileSaved && File.Exists(filePath))
{
File.Delete(filePath);
}
}
catch (Exception ex)
{
throw ex;
}
}