首页 > 解决方案 > 使用进度条 gui 表单时如何超过 $progressbar.Maximum 的限制 max [int32]

问题描述

我有时需要备份大文件。我制作了一个程序来帮助我完成这个显示 gui 进度条的任务。$progressbar.Maximum 是 int32 类型,我无法将其修改为 int64。

我试图像这样转换它

[int64]$progressbar.Maximum = $weightfile

或者像这样

$progressbar.Maximum = [int64]$weightfile

但是 $progressbar.Maximum 始终是 int32

这是我的代码的一部分

...
ForEach ($file in $namefile ) {
#[$poidsfile = [convert]::ToByte((gci -Path $file.fullname).Length)
$weightfile = (gci -Path $file.fullname).Length

$i=0
do {$i++
    $ProgressBar1.Maximum = $weightfile
    $pct = ($i/$weightfile)*100
    $TextBox1.Text = [System.Math]::Round($pct,2)
    $ProgressBar1.PerformStep()
   } until ($i -eq $weightfile)
}
Write-Host '$i ==' $i
...

如何更改为 int64 ?

标签: powershellprogress-barint64int32

解决方案


推荐阅读