找回密码
 加入
搜索
查看: 6038|回复: 9

[系统综合] 文件压缩 autoit

  [复制链接]
发表于 2013-6-20 23:18:17 | 显示全部楼层 |阅读模式
除了调用winrar,autoit有可以专门压缩文件的函数或者udf吗?

如果有的话,能告诉我嘛?
发表于 2013-6-20 23:30:06 | 显示全部楼层
#include <WinAPIEx.au3>
_WinAPI_CompressBuffer
 楼主| 发表于 2013-6-21 10:38:54 | 显示全部楼层
回复 2# pusofalse

有例子吗?麻烦给我看看
发表于 2013-6-21 12:31:33 | 显示全部楼层
回复 3# ljxu


    帮助文件UDFs3CHS.chm中有示例,P版都把函数给您 指出来了啊、
 楼主| 发表于 2013-6-21 12:38:20 | 显示全部楼层
回复 4# 楼上风云


查看过,没找到,是最近更新的函数吗?
发表于 2013-6-21 14:23:53 | 显示全部楼层
v3.3.8.1下的Autoit UDFs Help查過,無此函數
发表于 2013-6-21 14:53:16 | 显示全部楼层
會錯意了!
#include <WinAPIEx.au3>


_WinAPI_CompressBuffer


WinAPIex.au3
发表于 2013-6-21 18:00:22 | 显示全部楼层
Func _WinAPI_CompressBuffer($pUncompressedBuffer, $iUncompressedSize, $pCompressedBuffer, $iCompressedSize, $iFormatAndEngine = 0x0002)

        Local $Ret, $pWorkSpace = 0, $Error = 1

        Do
                $Ret = DllCall('ntdll.dll', 'uint', 'RtlGetCompressionWorkSpaceSize', 'ushort', $iFormatAndEngine, 'ulong*', 0, 'ulong*', 0)
                If (@error) Or ($Ret[0]) Then
                        ExitLoop
                EndIf
                $pWorkSpace = __HeapAlloc($Ret[2])
                If @error Then
                        ExitLoop
                EndIf
                $Ret = DllCall('ntdll.dll', 'uint', 'RtlCompressBuffer', 'ushort', $iFormatAndEngine, 'ptr', $pUncompressedBuffer, 'ulong', $iUncompressedSize, 'ptr', $pCompressedBuffer, 'ulong', $iCompressedSize, 'ulong', 4096, 'ulong*', 0, 'ptr', $pWorkSpace)
                If (@error) Or ($Ret[0]) Or (Not $Ret[7]) Then
                        ExitLoop
                EndIf
                $Error = 0
        Until 1
        __HeapFree($pWorkSpace)
        If $Error Then
                If IsArray($Ret) Then
                        Return SetError(1, $Ret[0], 0)
                Else
                        Return SetError(9, 0, 0)
                EndIf
        EndIf
        Return $Ret[7]
EndFunc   ;==>_WinAPI_CompressBuffer
发表于 2013-6-26 17:55:57 | 显示全部楼层


路过学习了先
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-5-18 22:54 , Processed in 0.078981 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表