Сжатие LZMA для VB6 / VBA? - PullRequest
       10

Сжатие LZMA для VB6 / VBA?

3 голосов
/ 02 сентября 2011

Нужно, чтобы LZMA сжимал зашифрованные файлы в моем приложении Access 2000.Кто-нибудь знает самый простой способ сделать это в VB6 / VBA или знает какой-либо исходный код?

Ответы [ 2 ]

0 голосов
/ 04 декабря 2011

Вы говорите, что хотите сжать зашифрованные файлы?Сжатие зашифрованных файлов обычно не приводит к значительной экономии места, поскольку процесс шифрования шифрует повторяющиеся структуры, с которыми работает сжатие.Поэтому я предполагаю, что вы имеете в виду сжатие и шифрование файлов.

Существует 7-zip lzma SDK , но вам нужно скомпилировать код и решить, как превратить его в Windows DLLили что-то, что вы можете использовать.

Я предлагаю вам просто перенести задачу в командную строку, например:

Sub test()
    Dim ProgramTaskID As Double
    ProgramTaskID = Shell("c:\compress.bat c:\source.txt c:\dest.zip", VbAppWinStyle.vbNormalFocus)
End Sub

Вам не нужно создавать командный файл для этого, вы можете предоставитькоманда напрямую.Функция Shell вернется сразу после запуска программы, поэтому вам нужно будет подождать и протестировать появление выходного файла, прежде чем пытаться что-либо с ним делать.

7-zip бесплатен и предоставляетсинтаксис командной строки, который вы можете использовать.

0 голосов
/ 04 ноября 2011

Это не бесплатно и функционально может быть излишним (хотя вы упомянули шифрование в своем вопросе; -):

CryptoSys - Закупки

CryptoSys - Особенности

Возможно, одной из важных особенностей CryptoSys является то, что он поддерживает несколько языков / платформ разработки, а не только VB6 и VBA.

...