⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ctdcmd.prj

📁 Citadel v.1.6 Full Sources
💻 PRJ
字号:
program CtdTool;
{$APPTYPE CONSOLE}

uses
  SysUtils,
  Windows,
  Classes,
  {$ifndef CtdNoCrypt}
  ctdCrypt in '..\ctdCrypt.pas',
  {$endif CtdNoCrypt}
  ctdCompr in '..\ctdCompr.pas',
  ctdWork in '..\ctdWork.pas',
  ctdAux in '..\ctdAux.pas';

type
  TCtdCmdWork = class(TCtdWork)
  public
    procedure  PreProcess(var ExeFileName, ResName: String); override;
    procedure  ShowMsg(const Msg: String;
      LogMode: TCtdLogModes = [lmMain]); override;
    function   Name: String; override;
  end;

{ TCtdCmdWork }

function TCtdCmdWork.Name: String;
begin
  Result := 'command line tool';
end;

procedure TCtdCmdWork.PreProcess(var ExeFileName, ResName: String);

  procedure CheckParams(var FileName, ResName: String);
  begin
    if ParamCount < 2 then
      raise Exception.Create('Please indicate the executable to process and resource name');

    FileName := ExpandUNCFileName(ParamStr(1));

    ResName := ParamStr(2);
  end;

begin
  inherited;

  CheckParams(ExeFileName, ResName);
end;

procedure TCtdCmdWork.ShowMsg(const Msg: String; LogMode: TCtdLogModes);
begin
  inherited;

  if not(lmLogOnly in LogMode) then
    WriteLn(Msg);
end;

var
  CtdCmdWork: TCtdCmdWork;
begin
  try
    CtdCmdWork := TCtdCmdWork.Create;
    try
      CtdCmdWork.ProcessExe(
        FindCmdLineSwitch('Log', ['-','/'], True),
        False, 0);
    finally
      CtdCmdWork.Free;
    end;
  except
    on E: Exception do
    begin
      Halt(1);
    end;
  end;
end.

⌨️ 快捷键说明

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