We suddenly started receiving multiple reports this week (starting around May 18/19 2026) from customers running our legacy Clarion 6 Windows application.
Environment:
Clarion 6 legacy multi-DLL application
1 EXE + main DLL + multiple functional DLLs
Windows 11
application has been stable for many years
Symptoms:
User starts our EXE (myapp.exe)
EXE remains running in Task Manager
no login window of our Clarion application appears
no crash/error message
process just hangs invisibly
Important finding:
If the customer changes the Windows default printer to for example:
“Microsoft Print to PDF” or “OneNote (Desktop)”
then our application starts immediately and works normally.
After startup, printing to the original printer often still works fine.
Affected printers so far:
HP OfficeJet 9010 (wireless)
Brother MFC-9340CDW
possibly other network printers
Non-affected example:
my own Canon MF724Cdw using Canon MFNP port on wired LAN works perfectly
We strongly suspect the application is hanging during startup while Clarion/Windows initializes the default printer?
Interesting detail:
Customers changing the default printer away from the network printer immediately solves the startup hang.
I suspect some printer-related initialization is occurring before our login window opens.
Questions:
Has anyone else recently seen Clarion applications hang during startup related to default printers?
Are there known Clarion runtime calls that can block on problematic printer drivers?
Any known issues with recent Windows 11 printer subsystem changes?
Besides avoiding printer initialization before the first window, are there recommended defensive techniques?
=== !!! ===
Update / additional findings:
I now have 2 affected customer systems confirmed using modern Windows 11 WSD/IPP printer configurations.
Customer #1:
Brother MFC-9340CDW
wireless/WiFi
WSD Port
Microsoft IPP Class Driver
Customer #2:
HP OfficeJet 9010
wireless/WiFi
WSD Port
In both cases:
myapp.exe hangs invisibly during startup
process remains active in Task Manager
no login window appears
changing the Windows default printer to “Microsoft Print to PDF” immediately fixes startup
Interesting comparison:
My own system does NOT reproduce the issue:
Do you have a different C6 program available (or could you create a simple C6 app) to see whether the issue can be reproduced on those machines consistently?
Another big C6 legacy multi-dll application is working without any problem, so no issues at all.
Both C6 multi-dll applications use a lot of third party templates, almost the same.
But my problem multi-dll application also use the SV ReportEngine class in order to print TXR reports directly from my application, which use the SV DLL:
C:\Clarion6\BIN\C60PRLBX.DLL (Clarion 6.3 Report Writer Engine)
In one of the DLLs I use: INCLUDE('RWPRLIB.INC') !ReportEngine class
That file is included from the C:\Clarion6\LIBSRC folder. I have attached the INC file. RWPRLIB.INC (2,3 KB)
So the problem started as of Monday 18 May 2026, already with 4 customers. Before, no problems at all.
I don’t know if the ReportEngine class is the cause, but it does something with printing of course. When myapp.exe is loading, I think that also some stuff from C60PRLBX.DLL will be loaded, which perhaps causes this problem? But my Logon window is the first window I show on the screen and before that Logon window I don’t do anything with printing of course.
But it’s a SV black box so I can’t look inside that code. We heavily use TXR reports all over in this application, so we can’t simply unplug it.
Yes, the problem seems to be in the Clarion 6.3 Report Writer Engine!
This Clarion6 example fails and stays forever in Task Manager:
C:\Clarion6\Examples\RWEXAMPL\RWDEMO1.PRJ
This (same) Clarion10 example works ok, so no issues:
C:\Clarion10\Examples\ReportWriter\TXR Reports\IntegratingTXR\RWDEMO1.sln
The example (made by SV) is a demonstration on how to call the Clarion RW print engine DLL (C%V%PRLB%X%.DLL) from a program.
But it still is very strange that the problem occurs as of Monday 18 May 2026, with my Clarion6 application. The temporary solution is to set another default printer, for example the “Microsoft Print to PDF”. After that, the above Clarion6 example is working ok. With Clarion10 no issues at all.
Do you have any ideas what I can do/debug in order to get the above little Clarion6 example working? After that, I can implement that solution into my huge Clarion6 multi-dll application.
I already used Process Explorer on the hanging Clarion 6 RWDEMO1.EXE and the thread stack shows it waiting inside printer-related calls, including:
DocumentPropertiesW
DocumentPropertySheets
DrvDocumentPropertySheets
ExtDeviceMode
StartPagePrinter
So yes, the next step is probably API Monitor to see the exact API call and parameters leading up to the hang.
I will try monitoring GDI / WinSpool printer APIs such as:
DocumentPropertiesW/A
ExtDeviceMode
DeviceCapabilities
OpenPrinter
GetPrinter
CreateDC
StartDocPrinter / StartPagePrinter
The useful thing is that I can now reproduce it with the small Clarion 6 RWDEMO1 example, while the equivalent Clarion 10 example works fine on the same machine.
I can now reproduce the problem locally with the small Clarion 6 example:
C:\Clarion6\Examples\RWEXAMPL\RWDEMO1.PRJ
Interesting:
the Clarion 6 RWDEMO1 example hangs forever in Task Manager
the equivalent Clarion 10 example works correctly on the same machine
changing the Windows default printer affects whether the Clarion 6 example hangs or not
For example on my Windows 10 32-bit VM:
Microsoft Print to PDF => hangs
Microsoft XPS Document Writer => works
Canon printer => works
So the issue is clearly printer-driver dependent.
Using Process Explorer on the hanging Clarion 6 RWDEMO1.EXE, I inspected the thread stack and found it waiting inside these printer-related calls:
DocumentPropertiesW
DocumentPropertySheets
DrvDocumentPropertySheets
ExtDeviceMode
StartPagePrinter
This strongly suggests the hang occurs during printer DEVMODE / printer capability initialization inside the old Clarion 6 report writer engine/runtime interaction with certain printer drivers.
I also tried API Monitor (as suggested), but:
Static Import crashes the process
Remote Thread attach fails with:
“Target thread did not complete execution in specified time”
which probably means the process blocks extremely early during printer initialization.
So at this point the evidence strongly points to:
Clarion 6 Report Writer engine
interacting badly with certain modern printer drivers / DEVMODE implementations
while Clarion 10 no longer has this problem.
Does anybody know whether there is a way to bypass/delay printer DEVMODE initialization in the old RW engine?
BUT… Why is this all happening as of Monday 18 May 2026?! I don’t get it…
Interesting possibility, but I can now reproduce the same hang locally on a Windows 10 32-bit VM that does NOT have the May 2026 updates installed yet.
So the recent spooler/security updates may have exposed or triggered the issue more often on customer systems, but they do not appear to be the root cause.
At this point it still looks more like:
old Clarion 6 ReportWriter engine (C60PRLBX.DLL)
interacting badly with certain printer DEVMODE/driver situations
especially because:
Clarion 6 RWDEMO1 hangs
Clarion 10 equivalent works fine on the same machine/printer.
Same problems on same days.
PRoblem with Clarion 6.3 multi-dll , works on single exe apps.
As far as we know problem is with
WSD/IPP configuration
Microsoft IPP Class Driver
On Windows 11 , Microsoft seems changing printing logic. Microft intention is that driver Microsoft IPP Class Driver will replace reeds for “fabric”, original drivers. Another term is Windows protected print mode (Shield icon onPrinters & scanners) corespond with IPP “logic”.
Solving that problem is partial, where we have native driver, multi-dll app works instantly.
A lot of printers doesn’t have apropriate driver especially for Windows 11.
On HP printers , you can use their Universal PCL drivers, may be !
On one user their Konica Minolta doesn’t work with their driver, multi-dll started, but nothing printed, error in “whats printing” !?
A lot of wandering, without a permanent solution.
You have included ReportWriter in your .exe, I wonder if that exe contains any TXR reports and perhaps within the TXR there is a printer specification?
This is just something I would check, I have very limited experience with CRW and TXR files, just enough to know that I would remove them from an app if I had the choice! [grin]