相关疑难解决方法(0)

当另一个进程退出时,在C#中引发事件

我不知道这个问题是否已被提出,但我找不到任何内容,所以如果你能找到一些东西,请引导我朝着正确的方向前进.

基本上,我想在我的当前C#程序中添加一个事件,以便在另一个指定进程("example.exe")退出时引发.那可能吗?

如果那是不可能的,那么,当通过直接路径("C:\ somefolderpaths ...\example.exe")指定的进程退出时,是否存在引发事件的方法?

要添加:我的程序不会启动进程example.exe.

c# wpf events process

6
推荐指数
1
解决办法
1598
查看次数

等待进程完成然后显示消息(C#)

我希望能够看到一个进程,直到它被终止,一旦不存在显示消息,这怎么可能实现?

.net c# windows process

5
推荐指数
2
解决办法
6343
查看次数

C#创建临时文件,写入,打印,然后删除

我正在尝试创建一个临时文件,写入它,打印它,然后删除它.这是我的代码:

string filePathReceipt = Path.GetTempFileName();

try {
    using (FileStream fs = new FileStream(filePathReceipt, FileMode.Open)) {
        File.WriteAllText(filePathReceipt, dataToBeWritten.ToString());
    }
}
catch (Exception ex) {
    MessageBox.Show(ex.Message);
}

//Printing receipt: start
ProcessStartInfo psi = new ProcessStartInfo(filePathReceipt);
psi.Verb = "PRINT";

try {
    Process.Start(psi);
}
catch (Exception ex) {
    MessageBox.Show(ex.Message);
}
//Printing receipt: end

if (File.Exists(filePathReceipt)) {
    //Delete the file after it has been printed
    File.Delete(filePathReceipt);
}
Run Code Online (Sandbox Code Playgroud)

我收到异常消息说:

无法写入,因为它被另一个进程使用.

编辑#2:我发现这有效: string filePathReceipt = AppDomain.CurrentDomain.BaseDirectory + @"receipt.txt";

虽然这会产生异常: string filePathReceipt = Path.GetTempFileName();

完整的,当前的代码:

        //string filePathReceipt = …
Run Code Online (Sandbox Code Playgroud)

c#

3
推荐指数
2
解决办法
2250
查看次数

标签 统计

c# ×3

process ×2

.net ×1

events ×1

windows ×1

wpf ×1