Mega Code Archive

 
Categories / Delphi / Functions
 

Using the LzExpand functions in your applications

Title: Using the LzExpand functions in your applications Question: How do I use the LzExpand functions in my application? Answer: Here is an example that will decompress a file that was compressed using the Microsoft compress.exe utility utilizing the -r (rename) command line switch. Note: If you already know the expanded name of the file, or it was not compressed with the -r command line switch, then simply omit the code associated with the GetExpandedName function, and directly hard code the file name as needed. uses LzExpand; {$IFNDEF WIN32} const MAX_PATH = 144; {$ENDIF} procedure TForm1.Button1Click(Sender: TObject); var lpDstFileName : PChar; SrcFile : integer; DstFile : integer; SrcOs : TOFSTRUCT; DstOs : TOFSTRUCT; begin GetMem(lpDstFileName, MAX_PATH); GetExpandedName('C:\TestFile.bi_', lpDstFileName); SrcFile := LZOpenFile('C:\TestFile.bi_', SrcOs, OF_READ); DstFile := LZOpenFile(lpDstFileName, DstOs, OF_CREATE); LZCopy(SrcFile, DstFile); LZClose(SrcFile); LZClose(DstFile); FreeMem(lpDstFileName, MAX_PATH); end;