Chris - FYI
The project files (pjx/pjt) copied fine in the exe!
Steve
You closed VFP, didn't you? So? No surprise. The PJX/PJT files don't go into an EXE, they just organize all files within the project - but themselves.
Just like skin contains all tissue, organs and bones making up a human, but doesn't contain itself (unless you're picky and say the outer skin layers contain the inner ones - yes, of course).
PJX/PJT are even less than a physical container, they just maintain a list of project item files - not themselves, though. But you don't find the actual SCX/SCT in them, these form files are still separate files.
So you could also say the EXE becomes the PJX, just that the EXE is a real container, all the project itmes that are not set to excluded are actually put into the EXE file and are physically in it, the EXE becomes a physical container, like a ZIP, just that files are not compressed in it.
The inclusion or exclusion is set by sensible defaults. Forms, programs, all project itmes related to code are by default not excluded (so included), data files are excluded as normally you would like to modify data with your exe and couldn't, if it was included and thus would become static and read only. You can indeed also set dbfs included, but then could only read data from it.
Since the pjx/pjt are not themselves project items, you even don't have the chance of including them in a build into the EXE. they always remain separate files.
During a VFP session modifying a project the PJX/PJT files are open exclusive, that's when you can't copy them. But that's a totlaly different reason. Maybe you remeber having that difficulty. But it's erroring different, you don't just get "file is in use" error about that.
For files within an EXE you only get the "is in use" error. For the stock.scx as it's running and therefore in use. You can copy files from within an EXE that are not in use currently. You observed that yourself, as you said:
Steve Meyerson: "I have another scx (not the Main) which is not active during backup. It copies fine in the exe. I suppose if it were active it would also not copy."
So VFP treats included files as it would treat excluded files: Errors arise depending on their used or exclusively opened state. The problem that arises is not the containment within an EXE, the problem that arises is due to prioritizing finding files in an EXE first (even if you specify them with a path clearly outside the EXE) VFP looks at the included files of the EXE only, then, it overlooks outside files of the same name. Window API functions don't have that point of view and couldn't even look inside a VFP exe to see files in it, that's all just VFP internal.
PJX files are just a table, too, with those specific file extensions. There's one help topic "spilling the beans" that almost all VFP specific files for anything are just DBF tables. The topic describing the DBF file structure: "Table File Structure (.dbc, .dbf, .frx, .lbx, .mnx, .pjx, .scx, .vcx)" So all these are DBFs and their partner files (typically with t instead of x) are the FTP files of a DBF.
Each has their specific field schema and specific records for specific parts, and some of that is also described. For example, there are reports that print out how frx/frt report tables are structured and what data in their fileds means.