vud3d 发表于 2025-6-14 00:16:24

关于使用7zip UDF的问题

#include '7zip.au3'

Local $SourceCompressFile="D:\down\CDRx4zd00.zip"
Local $InstallPath="D:\down\"
_ExtractFile()

Func _ExtractFile();解压文件
        If Not FileExists($InstallPath) Then DirCreate($InstallPath);检查安装地址是否存在,不存在就新建
        FileInstall('7-zip32.dll', @TempDir & '\7-zip32.dll', 0);包含并装入7z.dll文件到编译脚本到缓存目录
        Local $h7Z = _7ZipStartup(@TempDir & '\7-zip32.dll');定义7z装载
        Local $Count = _7ZipGetFileCount($h7Z, $SourceCompressFile) ;定义解压文件的数量
        If $Count = -1 Then
                _7ZipShutdown($h7Z);关闭dll挂载
                FileDelete(@TempDir & '\7-zip32.dll')

               MsgBox(64, '提示', '下载的文件不完整,请重新下载。' )
        EndIf
        _7ZipExtractEx($h7Z, 0, $SourceCompressFile, $InstallPath, 1);解压安装的文件
        _7ZipShutdown($h7Z);关闭7z解压
        FileDelete(@TempDir & '\7-zip32.dll')
       
EndFunc先看代码,用7z解压一个压缩包。弹出了以下错误,大神看看哪里有问题


"C:\Users\Administrator\Desktop\??\7zip.au3" (950) : ==> Subscript used on non-accessible variable.:
Return $aRet
Return $aRet^ ERROR


redapple2008 发表于 2025-6-14 08:42:39

7zip.au3" (950) : ==> Subscript used on non-accessible variable.: Return $aRet Return $aRet^ ERROR

vud3d 发表于 2025-6-14 09:10:07

redapple2008 发表于 2025-6-14 08:42
7zip.au3" (950) : ==> Subscript used on non-accessible variable.: Return $aRet Return $aRet^ ERRO ...

是啊这个错误是为什么呢

redapple2008 发表于 2025-6-14 09:30:39

用7z命令行就可以解决的
为什么要选udf?
页: [1]
查看完整版本: 关于使用7zip UDF的问题