c# - 从 Visual Studio 调试停止时的 Excel 僵尸进程

标签 c# excel visual-studio-2012

在应用程序调试期间(Visual Studio 2012、C#、Excel COM Interop),我通常会从 Visual Studio 中停止应用程序(异常,或者逻辑被破坏)。这使得从应用程序启动的 Excel 实例卡在内存中。是的,我可以从任务管理器中杀死它,但这很烦人。有什么方法可以“自定义”Excel 和我的应用进程之间的依赖关系吗?

最佳答案

我在我的配置文件中定义了一个 Powershell 函数 (C:\Users\{userName}\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1)

function Kill-Excel {
    $excelInstances = @(Get-Process | Where { $_.Name -Eq "Excel" }).Count
    if ($excelInstances -Eq 0) {
        "Excel not running"
    }
    else {
        if ($excelInstances -Eq 1) {
            "Killing 1 instance of Excel"
        }
        else {
            "Killing $excelInstances instances of Excel"
        }
        Get-Process | Where { $_.Name -Eq "Excel" } | Kill
    }
}

然后我只需在 Powershell 提示符中键入 Kill-Excel 即可杀死我计算机上的所有 Excel 实例,无论是隐藏的还是可见的。

请注意,这将关闭您打开的所有 Excel 实例,没有提示保存

关于c# - 从 Visual Studio 调试停止时的 Excel 僵尸进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23950696/

相关文章:

c# - Windows 工作流和 Thread.CurrentPrincipal

c# - ATDD - 验收测试从哪里开始?

java - 评估公式并从单元格中删除公式

java - 如何知道工作簿中的工作表数?

.net - 用于在 vb.net 和 vs2012 中解压缩 RAR 存档的 DLL 文件

c++ - MSVCP110.dll 丢失错误

c# - 执行一段代码后Unity 5无响应

xna - 我随机做错了什么?

python - 使用 openpyxl 或 xl* 或 xlsxwriter 在工作簿中移动工作表?

debugging - Visual Studio 尝试进入 BCL cs 文件