gpt4 book ai didi

nsis - 如何检查nsis中installdir上可用的可用空间?

转载 作者:行者123 更新时间:2023-12-04 05:27:44 30 4
gpt4 key购买 nike

我需要将 zip 文件捆绑到我的安装程序中。我需要 nsis 代码,以便它检查 installdir 上的可用空间并将其复制到变量。

最佳答案

NSIS 有一个部分属性可以帮助您执行此操作:AddSize .

如果您确实需要变量中的数量,则必须使用系统插件:

System::Call 'kernel32::GetDiskFreeSpaceEx(t"$instdir",*l.r1,*l,*l)'
DetailPrint $1

或者如果您需要 Win9x/NT4 支持:
!include LogicLib.nsh

Function GetDiskFree
Exch $0
Push $1
System::Call 'kernel32::GetDiskFreeSpaceEx(tr0,*l0s,*l,*l)i.r1'
${If} $1 < 1
Exch $2 ;Throw away result from Ex
System::Call 'kernel32::SetCurrentDirectory(tr0)'
System::Call 'kernel32::GetDiskFreeSpace(i0,*i0r1,*i0r0,*i0r2,*i)'
System::Call 'kernel32::SetCurrentDirectory(to)'
IntOp $1 $1 * $0
System::Int64Op $1 * $2
Exch
Pop $2
${EndIf}
Exch 2
Pop $0
Pop $1
FunctionEnd


Section
Push $instdir
Call GetDiskFree
Pop $0
System::Int64Op $0 / 1024 ;to kb
Pop $1
DetailPrint "$1 KiB ($0)"
SectionEnd

关于nsis - 如何检查nsis中installdir上可用的可用空间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13006071/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com