为 7zip 创建 AHK 进度条

问题描述 投票:0回答:0

我目前正在使用 AutoHotKey 和 7zip 编写一个程序,以自动将 Unity 项目保存/加载到 NAS 上的压缩文件中(因为 Unity 不支持将项目保存在网络位置),我想显示一个进度条。

我找到了一个如何读取实时命令行输出的例子:

RunWaitOne(command) {
    shell := ComObject("WScript.Shell")
    exec := shell.Exec(A_ComSpec " /C " command)
    while(!exec.StdOut.AtEndOfStream) {
        OutputDebug(exec.StdOut.ReadLine())
    }
}

但这是输出所有命令,除了 7zip 显示进度的部分,我认为这与它自己重写有关并且永远不会换行 idk。所以我更深入地研究了它,我一直在努力寻找任何东西,但后来我发现有一种方法可以通过 ahk 中的 ComObject 使用 c# dll,我还找到了一个名为 SevenZipSharp 的 c# 包,它有一种方法可以查看提取/压缩的进度,但它没有必要的 ProgId 东西,我没有使用 C# 和 DLL 的经验,我不确定从这里去哪里。如果有人有任何想法那就太好了。

c# dll autohotkey 7zip
© www.soinside.com 2019 - 2024. All rights reserved.