foxbin2prg

This commit is contained in:
2026-06-15 12:50:06 +03:00
parent 189ee3b000
commit d9bf25016f
2 changed files with 141 additions and 0 deletions

View File

@@ -29,6 +29,25 @@ user-facing strings, comments, and changelog entries.
- The compiler error log is `roaacnpro.ERR`; the runtime log is `log.txt`. Many entries in
`roaacnpro.ERR` are benign cross-references resolved at runtime from `COMUN` libraries.
## Searching code inside `.vcx`/`.scx` (binary) libraries
Most class/form code lives **inside binaries** (`.vcx`+`.vct`, `.scx`+`.sct`, …), not in `.prg`,
so plain grep can't read it cleanly. To search method/procedure bodies, convert the binaries to
their TEXT form first and grep the text. **At the start of a session (when work may touch
classes/forms), refresh the text cache** by running the helper, then search in the cache:
```powershell
powershell -ExecutionPolicy Bypass -File D:\ROA\UTIL\foxbin2prg\vcx2txt.ps1 # incremental
```
By default it is **project-driven**: it reads `roaacnpro.PJX` and converts only the `.vcx`/`.scx`
the project actually uses (~78 files), **not** all of `COMUN\` (most of which is unused). It writes
a mirrored, read-only text tree to `D:\ROA\UTIL\foxbin2prg\_textcache\`
(e.g. `_textcache\Clase\oacnpro.vc2`, `_textcache\comun\clase\_frm_base.vc2`); then `Grep` there.
Useful flags: `-Types vcx,scx,frx,mnx` (also reports/menus), `-Source <file|folder>` (one-off,
even outside the project), `-Force`, `-Clean`. The text is **only for reading/search** — edit code
in the VFP IDE. Full guide: **`docs/cautare_vcx_vct.md`**.
## The COMUN shared framework
`COMUN/` (and the sibling `..\COMUNROA\`) is **shared, framework-level code used by every ROA