请把轻狂志网址 www.flighty.cn 加入收藏夹,其他俱为假冒,谨防被骗!赞助请点 这里!找东东请用右边的搜索 ===>
05 2013-09

NSIS:获取硬盘中容量最大的分区盘符

作者:少轻狂 | 发布:2010-05-16 | 更新:2013-09-05 | 分类:部署 | Disposition | 热度:
我们在安装一些在线视频软件比如迅雷看看时,会发现他们的安装程序会自动判断当前系统中容量最大的分区,以便在其中创建数据缓冲下载的文件夹,这种功能如果实现呢,下面我们用NSIS来获取一下硬盘中容量最大的分区盘符。

!include "FileFunc.nsh"
!include "LogicLib.nsh"

OutFile "Demo.exe"
SilentInstall silent

Section
  ;查找所有硬盘驱动器(HDD)
  ${GetDrives} "HDD" "FindHDD"
  MessageBox MB_OK "最大可用空间驱动器盘符:$R2"
SectionEnd

Function "FindHDD"
  ;获取查找到的驱动器盘符($9)可用空间(/D=F)单位兆(/S=M)
  ${DriveSpace} $9 "/D=F /S=M" $R0
  ${If} $R0 > $R1
    StrCpy $R1 $R0
    StrCpy $R2 $9
  ${EndIf}
  Push $0
FunctionEnd