フォルダ内のすべてのApp-VパッケージをリストボックスにまとめたPowerShellスクリプトを作成しようとしています。フォルダ内のすべてのApp-Vパッケージを一覧表示するスクリプトを実行すると、フォルダの内容が読み込まれます。PowerShellでリストボックスを作成し、選択してアクションを実行する
質問私は、スクリプト選択した項目は、その後、下記の
追加-AppvClientPackageをコマンドを使用してのApp-Vパッケージをインストールするにはどうすればよいです|パブリッシュ - AppvClientPackage - グローバル。
上記のコマンドを実行する前に、管理者としてEnable-appvを実行する必要もあります。
上記のことも可能です。ご迷惑をおかけしますが、私はPowerShell Scriptingの新機能であり、ご迷惑をおかけして申し訳ありません。
以下は私が持っているコードは、これまで
[void] [System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms")
[void] [System.Reflection.Assembly]::LoadWithPartialName("System.Drawing")
$objForm = New-Object System.Windows.Forms.Form
$objForm.Text = "Select an App-V packag to install"
$objForm.Size = New-Object System.Drawing.Size(300,200)
$objForm.StartPosition = "CenterScreen"
$OKButton = New-Object System.Windows.Forms.Button
$OKButton.Location = New-Object System.Drawing.Size(75,120)
$OKButton.Size = New-Object System.Drawing.Size(75,23)
$OKButton.Text = "OK"
DialogResult property to OK.
$OKButton.DialogResult = [System.Windows.Forms.DialogResult]::OK
$objForm.Controls.Add($OKButton)
$objForm.AcceptButton = $OKButton
$CancelButton = New-Object System.Windows.Forms.Button
$CancelButton.Location = New-Object System.Drawing.Size(150,120)
$CancelButton.Size = New-Object System.Drawing.Size(75,23)
$CancelButton.Text = "Cancel"
$CancelButton.DialogResult = [System.Windows.Forms.DialogResult]::Cancel
$objForm.Controls.Add($CancelButton)
$objForm.CancelButton = $CancelButton
$objLabel = New-Object System.Windows.Forms.Label
$objLabel.Location = New-Object System.Drawing.Size(10,20)
$objLabel.Size = New-Object System.Drawing.Size(280,20)
$objLabel.Text = "Select an App-V packag to install:"
$objForm.Controls.Add($objLabel)
$objListBox = New-Object System.Windows.Forms.ListBox
$objListBox.Location = New-Object System.Drawing.Size(10,40)
$objListBox.Size = New-Object System.Drawing.Size(260,20)
$objListBox.Height = 80
Get-Content Z:\App-V_Package\appv.txt | ForEach-Object {[void] $objListBox.Items.Add($_)}
$objForm.Controls.Add($objListBox)
$objForm.Topmost = $True
$result = $objForm.ShowDialog()
If (-NOT ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] "Administrator"))
{
$arguments = "& '" + $myinvocation.mycommand.definition + "'"
Start-Process powershell -Verb runAs -ArgumentList $arguments
Break
}
Enable-appv
if ($result -eq [System.Windows.Forms.DialogResult]::OK -and $objListBox.SelectedIndex -ge 0)
{
$selection = $objListBox.SelectedItem
$selection | Add-AppvClientPackage | Publish-AppvClientPackage -global
}
ありがとうRobin、あなたの返信をありがとう。それを調べます。 – Jiks