Hab mal was älteres "ausgegraben" und wollte es wieder zum laufen bringen. Aber irgendwie geht es nicht.
Es scheitert beim Öffnen des Archives schon. Die Dll selbst kann noch geöffnet werden. Hat vielleicht iregendjemand
eine Idee woran es liegen könnte. Ich bin zugegebener maßen nicht so der Experte auf dem Gebiet von Dll's und so weiter.
Hier mal der Code:
Code: Alles auswählen
; Prototypen.
Prototype SevenZipOpenArchive(Arg1.i, Arg2$, Arg3.i)
Prototype SevenZipFindFirst(Arg1.i, Arg2$, Arg3.i)
Prototype SevenZipFindNext(Arg1.i, Arg2.i)
Prototype SevenZipCloseArchive(Arg1.i)
Prototype SevenZip(Arg1.i, Arg2$, Arg3$, Arg4.i)
Prototype SevenZipGetAttribute(Arg1.i)
Prototype SevenZipGetVersion()
Prototype SevenZipGetSubVersion()
Structure SEVENZIPINFO
dwOriginalSize.i
dwCompressedSize.i
dwCRC.i
uFlag.i
uOSType.i
wRatio.w
wDate.w
wTime.w
szFileName.c[#MAX_PATH+1]
dummy1.c[3]
szAttribute.c[8]
szMode.c[8]
EndStructure
SEVENINFO.SEVENZIPINFO
Dll$="c:\FastBackup\7-zip_DLL\7-zip64.dll"
ZipFile$="c:\Downloads\disk-activity-indicator.zip"
If OpenLibrary(0, Dll$)
SevenZipOpenArchive.SevenZipOpenArchive = GetFunction(0, "SevenZipOpenArchive")
SevenZipFindFirst.SevenZipFindFirst = GetFunction(0, "SevenZipFindFirst")
SevenZipFindNext.SevenZipFindNext = GetFunction(0, "SevenZipFindNext")
SevenZipCloseArchive.SevenZipCloseArchive = GetFunction(0, "SevenZipCloseArchive")
HARC.i = SevenZipOpenArchive(0, ZipFile$, 0)
If HARC
state = SevenZipFindFirst(HARC, "", @SEVENINFO)
While state = 0
a$=PeekS(@SEVENINFO\szFileName)
Debug a$
size=SEVENINFO\dwOriginalSize & $FFFFFFFF
state = SevenZipFindNext(HARC, @SEVENINFO)
Wend
SevenZipCloseArchive(HARC)
EndIf
CloseLibrary(0)
EndIf
http://ayakawa.o.oo7.jp/soft/ntutil.html#7z
Ist zwar eine Japanische seite, aber der Link ist deutlich zu erkennen.