vb.net - 向 PowerShell 进程发送中断信号
问题描述
我有一个 VB.NET 程序,它基本上“包装”了 PowerShell 以运行另一个名为 FFmpeg 的应用程序。因此,我的 VB.NET 应用程序运行运行 FFmpeg 的 PowerShell。出于性能原因,我必须这样做。
这是我启动 PowerShell 进程并运行 FFmpeg 命令的代码:
'Start Powershell
Dim PSProc as Process = New Process()
With PSProc.StartInfo
.FileName = "powershell"
.UseShellExecute = False
.CreateNoWindow = True
.RedirectStandardOutput = True
.RedirectStandardError = True
.RedirectStandardInput = True
End With
PSProc.Start()
'Run an FFmpeg command
PSProc.StandardInput.WriteLine("ffmpeg.exe ...")
无论如何,我正试图找出一种方法来立即从我的应用程序中杀死 FFmpeg。
我尝试使用PSProc.Kill()
,但这会阻止执行,直到 FFmpeg 完成运行,我真的需要能够立即杀死它。
当我从一个普通的 PowerShell 实例运行 FFmpeg 时,Ctrl+C
(中断信号)会立即按照我想要的方式杀死它。但是,我似乎无法找到从 VB 发送中断信号的方法。
有任何想法吗?
解决方案
推荐阅读
- c# - 检查是否使用 linq 绑定列表计数
- angular - 如何使 Angular Ivy + Angular Universal 工作?
- ios - 更改状态栏的背景颜色
- javascript - 从其他组件关闭 MessageBar Office-UI-fabric
- scala - 在类中实现案例类
- uwp - 如何自动化 msix 签名过程?
- ios - 我应该如何在 UITableView 下放置一个按钮并让它随着表格的增长而向下移动?
- .htaccess - Htaccess如何替换特殊字符序列
- javascript - 如何更改此代码以进行乘法运算?
- visual-studio-code - 如何修复 Visual Studio Code 终端中的“分段错误”错误?