unrardll.pas

来自「支持版本:Delphi 5-2009, C++Builder 5-2009 A」· PAS 代码 · 共 49 行

PAS
49
字号
unit UnrarDll;

interface

function UnrarAll(const fn, dir: string): boolean;
function UnrarSingle(const fn, dir, fn1: string): boolean;


implementation

uses
  Windows, SysUtils, RAR, Classes;

function UnrarAll(const fn, dir: string): boolean;
var
  r: TRAR;
begin
  r := TRAR.Create(nil);
  try
    Result := r.OpenFile(fn);
    if Result then
      Result := r.Extract(dir, True, nil);
  finally
    FreeAndNil(r);
  end;
end;


function UnrarSingle(const fn, dir, fn1: string): boolean;
var
  r: TRAR;
  List: TStringList;
begin
  r := TRAR.Create(nil);
  List := TStringList.Create;
  List.Add(fn1);
  try
    Result := r.OpenFile(fn);
    if Result then
      Result := r.Extract(dir, False, List);
  finally
    FreeAndNil(r);
    FreeAndNil(List);
  end;
end;


end.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?