Hi, Eduardo -
What I'm going to suggest may or may not be feasible for your situation, but I will throw it out there for you to consider...
I think it would be useful to have some baseline data that contains some finer granularity that simply the overall completion time. Can you add timing/recording functionality to this process that collects data at several key and/or critical points? I would then compile/run with the Build 1892 runtime environment to collect this baseline dataset and verify that the overall completion time is similar to that observed before (roughly 18 minutes, I believe).
Once that data is collected, compile/run with the Build 3356 runtime environment and compare the datasets.
If you see, say, one part of the overall process that is performing abysmally but you still cannot determine possible causes, then perhaps you can include additional, finer data collection points in that portion of the process, then repeat.
This approach is how I would attack this issue if I were in your situation.
The GlobalMemoryStatus or GlobalMemoryStatusEx Windows API functions may be helpful. I can supply you with the PB structure(s) and external function declarations to interface with these API's, if desired.
Best regards, John
Can you tell me which tool you use to count access times?
Did you use any remote access to run your application, such as Citrix or mstsc, etc? If you run the application directly on Windows 10/11 without using any remote access, will it work normally?
Regards,
Ken
Process Monitor v4.01
https://learn.microsoft.com/es-es/sysinternals/
I have only used it on Windows, the test computer.