Ниже приведены основы кода, который не работает.
ВЫПУСК:
- Запрос API занимает много времени до завершения sh, что, в свою очередь, вызывает GUI чтобы заморозить и скрипт повесить.
- Я могу выполнить вызов вручную, и он работает нормально, это занимает много времени.
Я построил все остальное, прежде чем обработать этот вызов так что остальная часть рабочего процесса работает.
function myFunc {
try {
$status.Text = 'Collecting data'
$response = myHTTPCall -RequestTimeout 300
}
catch {
Write-Host "An error occurred:"
Write-Host $_
}
$status.Text = 'Done'
}
Add-Type -assembly System.Windows.Forms
$main_form = New-Object System.Windows.Forms.Form
$status = New-Object System.Windows.Forms.Label
$status.Text = ""
$main_form.Controls.Add($status)
$Btn = New-Object System.Windows.Forms.Button
$Btn.Add_Click({
myFunc
})
$main_form.Controls.Add($Btn)
$main_form.ShowDialog()