Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Forms 嵌入到PowerShell窗体中的PowerShell命令行。_Forms_Powershell_Embed - Fatal编程技术网

Forms 嵌入到PowerShell窗体中的PowerShell命令行。

Forms 嵌入到PowerShell窗体中的PowerShell命令行。,forms,powershell,embed,Forms,Powershell,Embed,是否可以将打开PowerShell表单时出现的shell窗口嵌入表单本身 带窗口的范式: 我希望实现的目标: 这可能吗?或者有什么方法可以达到类似的效果吗?这取决于你在做什么,但有几种方法可以解决这个问题。在这个答案中,我假设您是在PowerShell中创建表单,而不是在表单中创建PowerShell窗口(这实际上更易于管理)。如果您想要“单击”某些内容,例如批处理文件或快捷方式,则需要引用PowerShell exe并为其提供一些参数(例如脚本的位置),其中还可以指定窗口样式(请参阅Pow

是否可以将打开
PowerShell
表单时出现的shell窗口嵌入表单本身

带窗口的范式:

我希望实现的目标:


这可能吗?或者有什么方法可以达到类似的效果吗?

这取决于你在做什么,但有几种方法可以解决这个问题。在这个答案中,我假设您是在PowerShell中创建表单,而不是在表单中创建PowerShell窗口(这实际上更易于管理)。如果您想要“单击”某些内容,例如批处理文件或快捷方式,则需要引用PowerShell exe并为其提供一些参数(例如脚本的位置),其中还可以指定窗口样式(请参阅PowerShell帮助--PowerShell.exe-?)。在这种情况下,您可能需要使用:

powershell.exe -WindowStyle Hidden
确保测试并确保外壳打开的任何窗体都可见

如果您想创建一个表单,然后在表单上添加文本,那么也可以使用以下几种方法:

  • 创建一个控件(TextBlock就好了),并将数据从shell放到控件上,例如通常情况下从shell向用户发送的跟踪消息
  • 创建powershell进程,并挂接到标准输出流中
  • 我不确定您将如何在屏幕上托管console窗口,因为windows和窗体等内容的管理方式与控制台应用程序略有不同,后者在conhost.exe实例中运行

    上述技术是否符合您的标准