MS-DOS name from a Rev table (AREV Specific)
At 02 AUG 2000 12:49:11PM Ruben Martinez wrote:
I'd like to know how can I programmaticaly get the MS-DOS
name from a Linear Hash Table (As the LHDUMP command does).
The functionality that I wish to implement in my application
is to change the file attributes from within Advanced Revelation.
I'm using Adv. Rev. 3.12.
Thanks for your help.
Rubén Martínez
rubenmg@telnor.net
At 02 AUG 2000 01:45PM Matt Sorrell wrote:
There is a field in the SYSTABLES table called DOSNAME. This returns the REV????? name, but does not give you the volume (directory).
For the volume, look at the VOLUME.NAME field. If the volume is REVBOOT, then this is the root directory of your application.
msorrel@greyhound.com
At 02 AUG 2000 04:53PM Eric Emu wrote:
If you're thinking of changing the read-only bit of REV*.LK and REV*.OV files then forget it - you'll probably only cause grief
for your network driver, except maybe if you use the NPP.
There's an AREV routine to *get* the file attributes at
http://www.sprezzatura.com/v2i2.html
I have one to set the file attributes, but I'm not
convinced this is a really good idea so I probably
won't release it.
Eric
At 02 AUG 2000 05:27PM Ruben Martinez wrote:
Thak you Mark, but I could not found such field, the only available fields on the SYSTABLES that I have are:
Field type:
TABLENAME
VOLUME
TABLE
APPLICATION
FILESYSTEM
TABLEHANDLE
Symbolic type:
ALIAS
LISTTABLEHANDLE
SYSTMETABLE
TABLETYPE
And neither of the above returns the MS DOS name. Any other idea that could help?
At 02 AUG 2000 05:31PM Ruben Martinez wrote:
OK Eric. I'll set the read-only attribute via the PC command:
PERFORM 'PC ATTRIB REV46345.* +R'
but this is not the real problem. My problem now is how to get the MS DOS name programmatically.
Thanks for your help!
At 02 AUG 2000 07:11PM Warren wrote:
There are several routines that you can use to do this, several are included in the developers utilities disks which can be downloaded from the demos and downloads section of this website.
Notably:
FILE.INFO, NATIVE.NAME
FILE.INFO does not work with ARev 2.1x or higher. NATIVE.NAME requires some fiddling to work under 3.0x+. Do a search on NATIVE.NAME for details.
Larry Wilson also has a routine $RTIFILE.S on his website http://AdvancedRevelation.com which will allow you full access to the @files system variable without having to use the legendary system compiler.
At 03 AUG 2000 06:59PM Paul Rule wrote:
You can get the DOS filename by opening the file and interrogating the handle.
At 04 AUG 2000 05:42AM Ian Lord wrote:
Try this, you may need to play around a bit..
If field 5 in systables is empty (this is where the dos file handle is usually kept),
Attach the revmedia files for the volume concerned (ie attach datavol revmedia)
Do a setalias as the files are in the sysprog account and read the tablename*applicationname record. The first field is the dos filename.
At 04 AUG 2000 09:17AM [url=http://www.sprezzatura.com]The Sprezzatura Group[/url] wrote:
Cleanest way is to get the volume name from the SYSTABLES/FILES file, get the directory information from the SYSVOLUMES/VOLUMES file then read in the REVMEDIA record and get the DOS name from there.
You never know how the handle will be configured.
World leaders in all things RevSoft
At 04 AUG 2000 10:21AM Warren wrote:
Right, the file handle varies from version to version and may have extraneous stuff tacked on by MFSs etc.