gpt4 book ai didi

.net - PowerShell-为加载的程序集设置别名

转载 作者:行者123 更新时间:2023-12-04 09:43:48 25 4
gpt4 key购买 nike

我使用以下代码将.Net程序集加载到PowerShell:

[System.Reflection.Assembly]::Load("System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089") | out-null 
[System.Windows.Forms.MessageBox]::Show("Hello world")

我可以为程序集设置别名(例如:'System.Windows.Forms'='Forms'),以便在调用诸如MessageBox.Show()的静态方法时不必键入程序集的全名吗?

最佳答案

虽然您本身无法创建某种 namespace 别名,但是可以使用以下技巧(摘自Lee Holmes的PowerShell Cookbook):

$namespace = "System.Windows.Forms.{0}"
$form = New-Object ($namespace -f "Form")

但这仅适用于 New-Object,因为它需要一个字符串作为类名。您不能在方括号中的类型名称中使用该语法。

但是,您可以做的是省略隐含的 System部分:
[Windows.Forms.MessageBox]::Show("Hello World!")

使它略短一些。

关于.net - PowerShell-为加载的程序集设置别名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2529197/

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