DLL开发出来的方法:unit ReportDLLFun;
//-------------------
// 接口单元(实现.net报表打印)
//-------------------//TReportCom是一个类interface
uses ReportComDLL_Type,Windows, SysUtils,SyncObjs;Function Report(FunOnGtReportCom: TOnGtReportCom;const Template: PChar;var RetValue: PChar;var RetValueLen: Integer): Boolean;StdCall;
implementationFunction Report(FunOnGtReportCom: TOnGtReportCom;const Template: PChar;var RetValue: PChar;var RetValueLen: Integer): Boolean;StdCall;
var
  sWideBuf: string;
  ReportCom: TReportCom;
begin
  try
    ReportCom := TReportCom.Create;
    try
      RetValue := '';
      RetValueLen := 0;
      with ReportCom do
      begin
        Set_GtReportCom(FunOnGtReportCom);
        Set_Template(StrPas(Template));
        sWideBuf := Get_Report();
        RetValue := StrAlloc(Length(sWideBuf));
        CopyMemory(RetValue,PChar(sWideBuf),Length(sWideBuf));
        RetValueLen := Length(sWideBuf);
      end;
    except
    end;
  finally
    Result := True;
  end;
end;
initialization
  IsMultiThread := True;
finalizationend.我在自己的机器上运行多个IE页面同时打印,就会出现问题。