많은 기능을 가진 GUI가 있지만 그 중 하나를 구축해야하는 것은 직원 멤버의 직원 ID 번호이므로이를 사용하여 추가 할 수 있습니다 다른 기능들. 로그인 상자를 만들어서이 작업을 수행하려고합니다. (암호는 필요 없습니다)invoke-expression을 통해 두 번째 ps1 파일에 argu를 전달한 후 PS1을 닫습니다.
첫 번째 PS1이 열리 며 입력 상자가 생기고 두 번째를 invoke-expression으로 호출하고 직원 ID 번호를 전달합니다. argu.
제 문제는 첫 번째 PS1 파일이 열려 있고 두 번째를 닫을 때까지 닫히지 않습니다. 많은 탭을 그냥 메신저로 가 나는 그것이 로그인 후 닫고 바로 두 번째는이
Add-Type -AssemblyName System.Windows.Forms
$form = New-Object Windows.Forms.Form
$form.Size = New-Object Drawing.Size @(210,75)
$form.StartPosition = "CenterScreen"
$Form.Text = "Please Login"
$Label = New-Object System.Windows.Forms.Label
$Label.Location = New-Object System.Drawing.Size(5,5)
$Label.Size = New-Object System.Drawing.Size(55,20)
$Label.Text = "Staff no:"
$Form.Controls.Add($Label)
$numInputBox = New-Object System.Windows.Forms.TextBox
$numInputBox.Location = New-Object System.Drawing.Size(60,5)
$numInputBox.Size = New-Object System.Drawing.Size(50,26)
$numInputBox.text = ""
$numInputBox.add_Keydown({if ($_.KeyCode -eq "Enter")
{login}})
$form.Controls.Add($numInputBox)
Function login {
$sdnum = $numInputBox.text
Invoke-Expression "C:\servicedesk\sdtool.ps1 '$sdnum'"
}
$loginbutton = New-Object System.Windows.Forms.Button
$loginbutton.Size = New-Object System.Drawing.Size(75,21)
$loginbutton.Location = New-Object System.Drawing.Size(115,4)
$loginbutton.add_click({login})
$loginbutton.Text = "Login"
$form.Controls.Add($loginbutton)
$drc = $form.ShowDialog()
sdtool.ps1 내 login.ps1입니다
을 실행하는 나를 떠나고 싶어합니다 (sdtool.ps1 훨씬 더 큰
param(
[string]$a
)
Write-host $a
이제 작동하지만 콘솔 창을 배경으로 열어두고 끝까지 "-WindowStyle Hidden"을 추가하려고했지만 아무 것도 열리지 않습니다. –
sdtool.ps1 (subscript)의 콘솔 창을 의미합니까? GUI뿐입니까? 그렇다면 powershell.exe에 대한'-WindowStyle Hidden'이 작동해야하지만'-File'과 스크립트 인수는 마지막 인자와 인수가 될 필요가 있습니다.'Start-Process '를 시도하십시오 powershell.exe "-ArgumentList"-WindowStyle Hidden -File C : \ servicedesk \ sdtool.ps1 -a $ sdnum "' –
안녕하세요 Frode F yes SDtool.ps1은 GUI이기도합니다. 바로 WindowStyle 숨김 기능이 제대로 작동하지 않았습니다. 필요에 따라 현재 실행중인 최고 점수 (내 요청이 확실한지 확인하기위한 메모) –