gpt4 book ai didi

c# - 使用 powershell 附加到正在运行的程序

转载 作者:太空宇宙 更新时间:2023-11-03 22:59:18 25 4
gpt4 key购买 nike

我有一个运行 Windows 10 IoT 的 Raspberry Pi v2,我正在尝试在其上运行一个 dotnet 2.0 控制台应用程序。

我有一个 powershell 脚本在启动时启动它,但后来我没有从它获得控制台输出。我想知道是否有一种方法可以在我的计算机上使用 powershell 附加到正在运行的进程,就像附加到 docker 容器一样,以获取控制台输出。

我不想在我的电脑上运行我的程序,而 Raspberry Pi 是我唯一想留着过夜来运行该程序的电脑。

最佳答案

如果您不能或不想重新启动您的应用程序

在这种情况下你的能力相当有限,因为,正如另一个 SE Answer 中所述哈里约翰斯顿:

Windows does not provide any mechanism to retroactively give another process a standard output handle if it was created without one. (Besides, in most cases an application will check the standard output handle only during startup.)

如果您需要读取已经写入控制台的内容,您可能就不走运了。但是,您应该能够通过使用调试工具附加到进程来获得任何 future 输出。如果是 Visual Studio Remote Debugger ,这甚至允许您调试控制台应用程序的执行,前提是您编写了它

accepted answer在 Superuser.com 上建议 StraceNT还能够读取正在运行的控制台应用程序的输出。如果正在运行的应用程序不是您自己编写的,这可能是您最好的选择。

如果应用程序可以停止并重新启动

Powershell Remoting 可能是最好的方法。

您需要 enable Powershell Remoting在您的 Raspberry Pi 上,然后您可以在本地 Powershell 控制台中使用 enter-pssession [RaspberryPi-Hostname-or-IP] 连接到您的 Raspberry Pi。

此时,您可以像在本地机器上运行一样启动您的控制台应用程序,并获得您想要的所有控制台输出。

无需附加任何东西。

关于c# - 使用 powershell 附加到正在运行的程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43914800/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com