fastreport的官方网站上的fp3文件阅读器是英文的,为客户能使用中文版的,自己写了一个,很简单:
{******************************************************
FP3 Viewer
by xander.xiao@gmail.com
Version 1.0.0.0, 2009-3-20
*******************************************************}
program FP3Viewer;
uses
Forms, windows, frxClass, Registry;
{#BACKUP *.ICO}
{$R *.res}
var
frxReport: TfrxReport;
procedure FileAssociate(const AFileExt, AProgram: string;
AFileExtKeyName: string = ''; ADescription: string = '');
var
Reg: TRegistry;
procedure WriteRegistry(AReg: TRegistry; AKey, AValue: string);
begin
if AReg.OpenKey(AKey, True) then begin
AReg.WriteString('', AValue);
AReg.CloseKey;
end;
end;
begin
Reg := TRegistry.Create;
if Length(AFileExtKeyName) = 0 then
AFileExtKeyName := Copy(AFileExt, 2, Length(AFileExt)) + '_File_Viewer';
if Length(ADescription) = 0 then
ADescription := AFileExtKeyName;
Reg.RootKey := HKEY_CLASSES_ROOT;
WriteRegistry(Reg, AFileExt, AFileExtKeyName);
WriteRegistry(Reg, AFileExtKeyName, ADescription);
WriteRegistry(Reg, AFileExtKeyName + '/Shell/Open/Command',
'"' + AProgram + '" "%1"');
WriteRegistry(Reg, AFileExtKeyName + '/DefaultIcon', AProgram);
Reg.Free;
end;
begin
Application.Initialize;
frxReport := TfrxReport.Create(Application);
TfrxReportPage.Create(frxReport);
if ParamCount > 0 then begin
frxReport.PreviewPages.LoadFromFile(ParamStr(1));
frxReport.ShowPreparedReport;
end else
frxReport.ShowReport(True);
FileAssociate('.FP3', Application.ExeName,
'FastReport3.PreparedReport', 'FastReport报表文件');
Application.Terminate;
end.