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
.net 为Powershell创建GUI前端_.net_Powershell_User Interface - Fatal编程技术网

.net 为Powershell创建GUI前端

.net 为Powershell创建GUI前端,.net,powershell,user-interface,.net,Powershell,User Interface,为包含多个功能的Powershell脚本创建GUI前端的最佳方法是什么?即GUI中的按钮将调用所述功能并最终输出一些输出。来自Sapien的有一个内置GUI设计器,但它相当昂贵 还有免费的on CodePlex,WPK也是免费的,它是 所有这些工具都很棒,PowerShell是一种很棒的语言,但是如果你真的需要为你的脚本提供一个图形用户界面,你也许应该质疑你是否真的在编写一个程序。如果你真的在写一个程序,使用像C#这样的语言可能是一个更好的决定 如果您想要一个带有UI的脚本示例,可以查看,这是我

为包含多个功能的Powershell脚本创建GUI前端的最佳方法是什么?即GUI中的按钮将调用所述功能并最终输出一些输出。

来自Sapien的有一个内置GUI设计器,但它相当昂贵

还有免费的on CodePlex,WPK也是免费的,它是

所有这些工具都很棒,PowerShell是一种很棒的语言,但是如果你真的需要为你的脚本提供一个图形用户界面,你也许应该质疑你是否真的在编写一个程序。如果你真的在写一个程序,使用像C#这样的语言可能是一个更好的决定

如果您想要一个带有UI的脚本示例,可以查看,这是我大约一年前编写的。将转换WindowsImage作为C#程序编写会容易得多,但我认为展示PowerShell的功能更有趣

希望这能有所帮助。

I steel使用两种解决方案(在web上隐藏得很好,但仍然存在)来解决您的问题:

首先,您可以使用(它是免费的,您只需登录到Sapiens并下载即可)。此框架允许您以图形方式构建对话框,然后生成Windows窗体的PowerShell代码(如下面所示)


Second你有一个脚本,名为Arnaud Petitjean写的(11-05-2007)。您必须再次注册,这篇文章是用法语写的,但是您可以下载一个Powershell脚本,将Windows窗体从.CS文件转换为PS1。就像在Sapiens editor中一样,转换会被注释(这里是法语)并带有编码事件的位置。

您可以使用PowerShell完全访问.NET库。我以前使用Visual Studio使用Winforms拼凑出一个对话框,然后将它生成的代码复制并粘贴到我的powershell脚本中

类似于

function createGUI{
     [void] [System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms") 
     ...
     $main_form = New-Object System.Windows.Forms.Form
     $button_OK = New-Object System.Windows.Forms.Button
     ....
     $main_form.ShowDialog()
}

createGUI

为什么在这里使用反射?抱歉,如果这个问题没有意义,我只是不理解您调用的第二行代码
System.Reflection.Assembly