0
关于如何启动shell关闭操作至少有this question。问题是它没有捕获与'x'按钮关闭PowerShell窗口。显然它不会产生上述事件。有什么办法可以捕捉到这种密切和有力的行动吗?PowerShell窗口关闭操作'x'
我想要的是在关闭时从会话变量(散列表System.Diagnostisc.Process
)关闭到系统变量时管理一些值。这样新的会话可以直接访问它们。
关于如何启动shell关闭操作至少有this question。问题是它没有捕获与'x'按钮关闭PowerShell窗口。显然它不会产生上述事件。有什么办法可以捕捉到这种密切和有力的行动吗?PowerShell窗口关闭操作'x'
我想要的是在关闭时从会话变量(散列表System.Diagnostisc.Process
)关闭到系统变量时管理一些值。这样新的会话可以直接访问它们。
也许表达式“每个问题都可以用另一个间接层次解决”(see also)适用于此处。
可能真的取决于您的需求以及您的脚本如何工作等。也许您可以通过加载一些通用库来启动每个需要此行为的脚本,该库会导出一个函数,用于监视一个给定的PowerShell过程,即您当前的过程。
您可以使用$pid
变量获取此信息,并将其传递给您的watcher函数,该函数启动等待当前脚本退出的进程。这可能是另一个脚本,C#等。另请参阅Get-Process -Id $pid
。
不知道你想完成它是什么很难推荐任何更具体的可能满足您的需求,如日志记录,成绩单,用户教育,检测的“脏关机”你的代码,等
加载一个DLL应该是足够的,因为那些被通知即将发生的进程关闭。 – Joey
@Kory Gill我用我的需求更新了问题 - 想为将来的会话保存活动进程的散列表。 – ephemeris
@Joey你能否详细说说DLL,至少在哪里寻找? – ephemeris