diff options
Diffstat (limited to 'analyzer.lpr')
-rw-r--r-- | analyzer.lpr | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/analyzer.lpr b/analyzer.lpr new file mode 100644 index 0000000..02dfd2a --- /dev/null +++ b/analyzer.lpr @@ -0,0 +1,77 @@ +program analyzer; + +{$mode objfpc}{$H+} + +uses + {$IFDEF UNIX}{$IFDEF UseCThreads} + cthreads, + {$ENDIF}{$ENDIF} + Classes, SysUtils, CustApp + { you can add units after this }; + +type + + { TAnalyzer } + + TAnalyzer = class(TCustomApplication) + protected + procedure DoRun; override; + public + constructor Create(TheOwner: TComponent); override; + destructor Destroy; override; + procedure WriteHelp; virtual; + end; + +{ TAnalyzer } + +procedure TAnalyzer.DoRun; +var + ErrorMsg: String; +begin + // quick check parameters + ErrorMsg:=CheckOptions('h', 'help'); + if ErrorMsg<>'' then begin + ShowException(Exception.Create(ErrorMsg)); + Terminate; + Exit; + end; + + // parse parameters + if HasOption('h', 'help') then begin + WriteHelp; + Terminate; + Exit; + end; + + { add your program here } + + // stop program loop + Terminate; +end; + +constructor TAnalyzer.Create(TheOwner: TComponent); +begin + inherited Create(TheOwner); + StopOnException:=True; +end; + +destructor TAnalyzer.Destroy; +begin + inherited Destroy; +end; + +procedure TAnalyzer.WriteHelp; +begin + { add your help code here } + writeln('Usage: ', ExeName, ' -h'); +end; + +var + Application: TAnalyzer; +begin + Application:=TAnalyzer.Create(nil); + Application.Title:='Analyzer'; + Application.Run; + Application.Free; +end. + |