Environment variable defines TEMP file folder for PB's machine code compiler. I forgot its name.
UPDATE => Found it!
It is config parameter in PB.INI, section = [PB], name = CODEGENTEMP.
I used ProcMon from Sysinternals to investigate the PB compiler DLL's text content and found the name "hiding in plain sight".
I found:
- File = cgq72bu6.c (and name siblings) created for different classes in Tiny.PBL and Export.PBL
- Same for file = cgq72bu8.c and cgq72bu7.c - and more...
- They come in different order within each PBL.
- No duplicate class names in my source.
WHY reuse temp file name?
Unless there is an option to suspend PB's process during compilation when files are created but not yet deleted I will have to monitor all file system activity in the TEMP folder and copy all *.c files within a 200 msec timespan of its latest change before compiler deletes it and possibly creates new file of same name. Same C-file may be refreshed several times after creation before deletion. Those changes may be separated by much longer timespans than from last change to deletion.
So any automation I create risks copying *.c files to a "safe haven" multiple times - sometimes based on same class - sometimes on other classes. SO it has to look into each file's content to determine what class is implemented. This feels tedious and feels like there may be an easier way.
Anyone knows easier way to capture all generated *.c files?
Without writing a FileSystemWatcher class and complete file processing in sub-sub-seconds response times.
Other environment variables that may influence compiler behavior?
TIA /Michael
* To do security reviews/vulnerability checks
* To learn how the C++ code looks; especially to learn how good a security layer machine code generation really is.
* I'm curious