无法在PowerShell中创建函数

时间:2012-08-08 09:52:29

标签: powershell-v2.0 powershell-ise

我正在尝试使用this tutorial在PowerShell ISE中添加菜单项。

Function My-Custom-Function { 
    Write-Host “Running my very own function!” 
}

$psISE.CustomMenu.Submenus.Add(“Run Custom Function”, {My-Custom-Function}, “Shift+Ctrl+f”)

但由于某种原因,我收到了这个错误:

You cannot call a method on a null-valued expression.
At line:5 char:31
+ $psISE.CustomMenu.Submenus.Add <<<< (“Run Custom Function”, {My-Custom-Function}, “Shift+Ctrl+f”)
    + CategoryInfo          : InvalidOperation: (Add:String) [], RuntimeException
    + FullyQualifiedErrorId : InvokeMethodOnNull

我运行Windows 7 Enterprise并以管理员身份运行PowerShell ISE ...

关于这个问题的任何想法?

2 个答案:

答案 0 :(得分:0)

试试这个

功能My-Custom-Function {     写主机“运行我自己的功能!” }

$ psISE.CurrentPowerSHellTab.AddOnsMenu.Submenus.Add(“运行自定义功能”,{我的自定义功能},“Shift + Ctrl + f”)

这适用于我系统上的V3 !!

答案 1 :(得分:0)

案文:

$ psISE.CurrentPowerShellTab.AddOnsMenu.Submenus.Add(“运行自定义功能”,{我的自定义功能},“Shift + Ctrl + f”)

最好改为

$ psISE.PowerShellTabs.AddOnsMenu.Submenus.Add(“运行自定义函数”,{My-Custom-Function},“Shift + Ctrl + f”)

假设您需要所有PowerShell标签的附加菜单