Conflict between FR and print spooler WinXP
I'm using NexusDB, and I'm having a problem with their print manager DLL, which is effectively a wrapper around FastReport.
Here are some excerpts from a long thread in the NexusDB support group called "1.05.1 EM problem": (EM means "Enterprise Manager")
====
I just downloaded the 1.05.1 EM and 1.05.1 Report Engine, unzipped them, put them in a directory all by themselves, copied a Dictionary.frf file (dated 9/12/2003) from the main Nexus files directory, and ran EM.
It starts fine. I added an alias, and it finds the tables in the alias fine. But when I double-click a table, it hangs. A frame comes up for the table, and then its little world comes to an end.
When I try to browse a table or open a dictionary, the program freezes.
I renamed the ReportEngine dll (changed the extension to xdll) so it doesn't try to load, and EM works properly. Clearly it's a ReportEngine issue.
Sadly, I get the same problem on all three machines I have here, both with the EM and Report Manager DLL downloaded from the website, and with the EM compiled with the 1.05.1 release.
Each machine has XP Pro with SP1 and recent updates. The laptop has a 1.4 GHz Centrino and 512 MB ram. The old warhorse, a P3-500 Mhz, only has 384 MB.
> Could that be a user rights problem?
>
I'm Administrator on all machines.
====
Tracing the call to the dll in EM (stepping with the Delphi 7 debugger), I find that the hangup happens at
hDLL := 0;
DllPath := IncludeTrailingBackslash(ExtractFilePath(Application.ExeName))+csNxemReportEngineDLL;
if FileExists(DllPath) then try
hDLL := LoadLibrary(PChar(DllPath)); <<< Hangup is here
I don't own FastReport (yet), so I can't compile the Nexus Report Manager. I downloaded a trial version, but I ran into some problems trying to use it (it seems to expect me to have TeeChart) and I haven't yet tried to figure out how to resolve that issue. So I haven't been able to trace into the Report Manager dll.
I have no idea why this should be a problem, but after a couple of hours of clean booting with MSConfig and block disabling stuff (many thanks to Jerry Lippey in the Compuserve WinNT Forum for pointing me to
>> How to Perform a Clean Boot in Windows XP
http://support.microsoft.com/?kbid=310353 <<),
I found the problem. And I have no idea whatsoever why it should be a problem.
It's the Print Spooler Service.
The problem seems to be a conflict with the print spooler in XP Pro.
====
> It may be something corrupted in your Print Sppoler or XP installation.
That's pretty much what I think, too. I have the MS KB article about troubleshooting printer problems up (#314073). and I'll be going over it today.
====
I removed all the non-standard stuff from the registry, on all 3 machines. No joy.
If I stop the print spooler, I can use the Report Manager DLL and see reports for printing, but of course printing is disabled. I can restart the print spooler after I've started EM, and I can still see reports, but the print icons are still disabled.
That's not a real surprise.
Anyway, has anybody else had a problem between FastReport and WinXP print spooler?
And does anybody have a suggestion as to what I can try next?
John
Here are some excerpts from a long thread in the NexusDB support group called "1.05.1 EM problem": (EM means "Enterprise Manager")
====
I just downloaded the 1.05.1 EM and 1.05.1 Report Engine, unzipped them, put them in a directory all by themselves, copied a Dictionary.frf file (dated 9/12/2003) from the main Nexus files directory, and ran EM.
It starts fine. I added an alias, and it finds the tables in the alias fine. But when I double-click a table, it hangs. A frame comes up for the table, and then its little world comes to an end.
When I try to browse a table or open a dictionary, the program freezes.
I renamed the ReportEngine dll (changed the extension to xdll) so it doesn't try to load, and EM works properly. Clearly it's a ReportEngine issue.
Sadly, I get the same problem on all three machines I have here, both with the EM and Report Manager DLL downloaded from the website, and with the EM compiled with the 1.05.1 release.
Each machine has XP Pro with SP1 and recent updates. The laptop has a 1.4 GHz Centrino and 512 MB ram. The old warhorse, a P3-500 Mhz, only has 384 MB.
> Could that be a user rights problem?
>
I'm Administrator on all machines.
====
Tracing the call to the dll in EM (stepping with the Delphi 7 debugger), I find that the hangup happens at
hDLL := 0;
DllPath := IncludeTrailingBackslash(ExtractFilePath(Application.ExeName))+csNxemReportEngineDLL;
if FileExists(DllPath) then try
hDLL := LoadLibrary(PChar(DllPath)); <<< Hangup is here
I don't own FastReport (yet), so I can't compile the Nexus Report Manager. I downloaded a trial version, but I ran into some problems trying to use it (it seems to expect me to have TeeChart) and I haven't yet tried to figure out how to resolve that issue. So I haven't been able to trace into the Report Manager dll.
I have no idea why this should be a problem, but after a couple of hours of clean booting with MSConfig and block disabling stuff (many thanks to Jerry Lippey in the Compuserve WinNT Forum for pointing me to
>> How to Perform a Clean Boot in Windows XP
http://support.microsoft.com/?kbid=310353 <<),
I found the problem. And I have no idea whatsoever why it should be a problem.
It's the Print Spooler Service.
The problem seems to be a conflict with the print spooler in XP Pro.
====
> It may be something corrupted in your Print Sppoler or XP installation.
That's pretty much what I think, too. I have the MS KB article about troubleshooting printer problems up (#314073). and I'll be going over it today.
====
I removed all the non-standard stuff from the registry, on all 3 machines. No joy.
If I stop the print spooler, I can use the Report Manager DLL and see reports for printing, but of course printing is disabled. I can restart the print spooler after I've started EM, and I can still see reports, but the print icons are still disabled.
That's not a real surprise.
Anyway, has anybody else had a problem between FastReport and WinXP print spooler?
And does anybody have a suggestion as to what I can try next?
John
Comments
FR 2.52 has been released. I assume that the Nexus DB team will update EM and the reportengine with this new release.
Maybe the problem will be solved then. If nobody recognizes your problem and don't have a solution available, you will be advised to use the latest version anyway.
Bert
I don't do much printing, and my (USB) printer is usually turned off, so its state is "offline". I downloaded a free printer driver (PDF995) and made it active, and everything works as advertised.
What happens is, that when I turn the printer on, the driver is activated. I didn't know that the report engine needed an active default printer to load.
John
in the function where the "problem" resides:
....
showmessage('No Active Printer found m8 !!');
....