Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.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
Powershell 不带隐藏窗体的托盘图标上下文菜单_Powershell - Fatal编程技术网

Powershell 不带隐藏窗体的托盘图标上下文菜单

Powershell 不带隐藏窗体的托盘图标上下文菜单,powershell,Powershell,我在PowerShell中试用托盘图标和上下文菜单已有一段时间了。但是,只有在同一脚本中调用表单时,我才能使上下文菜单正常工作 下面是一个小例子: Add-Type -AssemblyName "System.Windows.Forms" $objForm = New-Object System.Windows.Forms.Form $objNotifyIcon = New-Object System.Windows.Forms.NotifyIcon $objContextMenu = Ne

我在PowerShell中试用托盘图标和上下文菜单已有一段时间了。但是,只有在同一脚本中调用表单时,我才能使上下文菜单正常工作

下面是一个小例子:

Add-Type -AssemblyName "System.Windows.Forms"

$objForm = New-Object System.Windows.Forms.Form
$objNotifyIcon = New-Object System.Windows.Forms.NotifyIcon 
$objContextMenu = New-Object System.Windows.Forms.ContextMenu
$objExitMenuItem = New-Object System.Windows.Forms.MenuItem

$objExitMenuItem.Index = 1
$objExitMenuItem.Text = "Exit"
$objExitMenuItem.add_Click({ 
$objForm.Close() 
$objNotifyIcon.visible = $false 
})
$objContextMenu.MenuItems.Add($objExitMenuItem) | Out-Null

$objNotifyIcon.Icon = "$PSScriptRoot\win.ico"
$objNotifyIcon.Text = "Context Menu"

$objNotifyIcon.ContextMenu = $objContextMenu
$objForm.ContextMenu = $objContextMenu

#Enabling Icon in Taskbar
$objNotifyIcon.Visible = $true

#Hiding Form as best as possible
$objForm.Visible = $false
$objForm.WindowState = "minimized"
$objForm.ShowInTaskbar = $false
$objForm.add_Closing({ $objForm.ShowInTaskBar = $False }) 

$objForm.ShowDialog()
一旦删除表单组件,关联菜单将无法正常工作。
有人知道为什么需要加载此表单吗?有没有办法解决此问题?

请向我们展示迄今为止PowerShell用于自动化的尝试,即很少或没有用户交互。仅仅因为你可以连接到.NET等的UI元素并不意味着你应该使用它们。如果你想要一个桌面应用程序,你应该直接用其他语言编写,比如说C/WPF,因为这就是它们的设计目的。