Sign up on the Revelation Software website to have access to the most current content, and to be able to ask questions and get answers from the Revelation community

At 28 FEB 2002 07:34:39PM c milner wrote:

Is there a way within AREV to determine what the command line was for starting AREV?

Ie. If I start AREV with

AREV.EXE SYSPROG /X /WOOHOO

Is there a way to find out the additional parameters - @USERNAME is easy - what about /X or /WOOHOO

I want to be able to create additional optional parameters to start my AREV app, and act accordingly…


At 28 FEB 2002 08:39PM Jonathan Bird wrote:

As far as I know, there is nothing in Arev itself that will tell you how it was started. However, there may be other way to acheive waht you need. What are you trying to accomplish?

Jonathan

jb@psi.net.nz


At 01 MAR 2002 11:01AM [url=http://www.sprezzatura.com]The Sprezzatura Group[/url] wrote:

Charles,

Here's a solution. Frankly, we've never seen a need for this (as configuration tables internal to AREV are far easier) so until today we hadn't looked for such a function. The get DOS environment function works equally well. This code is rather redolent of a certain emu's ancient works .

The DOS command line is limited in size. The command line parameters are placed in the PSP block (program segment prefix) for AREV.EXE at offset 81h - this is a memory region which is fixed length and maintained by DOS. It's where AREV.EXE picks up its command line parameters. Be warned that the function returns leading blanks, so TRIM() may be in order, or perhaps simply an INDEX() call for what you want.

If you want to access the DOS command line from RBASIC, you can use the following AREV object to create $DOSCMDLINE

A =\02000000000000000000EB4A90000000\
A := \00000000000000000000000000000000\
A := \00000000000000000000000000000000\
A := \00000000000000000000000000000000\
A := \00000000000000000000000000000000\
A := \000000240000B462CD212EC706580000\
A := \008EC3BF8100BE1100268A053C0D741C\
A := \3C0A74183C0074142E833E580064740C\
A := \2E8804462EFF06580047EBDD1E8CCA8E\
A := \DABE11002E8B0E5800B40FFC2EFF1E0A\
A := \0057F3A45F2E8B0E580033C033D2B410\
A := \2EFF1E0A001FCB\

OPEN 'BP' TO BP.FILE THEN
  WRITE A TO BP.FILE,'$DOSCMDLINE'
END

* RBASIC Syntax:-

declare function doscmdline

parameter=doscmdline()

The Sprezzatura Group

World Leaders in all things RevSoft


At 02 MAR 2002 09:59AM RWilson wrote:

I'm wondering does this also work for G2?

We currently have batch jobs that start at 9pm

using the windows scheduler. In the past I have always

defined new accounts and setup the necessary qfiles

for processing


At 02 MAR 2002 11:27AM [url=http://www.sprezzatura.com]The Sprezzatura Group[/url] wrote:

We can't see any reason why the utility won't work under REVG.

The Sprezzatura Group

World Leaders in all things RevSoft


At 03 MAR 2002 12:39PM RWilson wrote:

Sprezz, just to let you know DOSCMDLINE does work under revg2

with a couple of changes

1)it appears that g2 parses rev.exe on "(" & ")"

wasnt there (E for math chip emulation long ago?

2)REV SYSPROG (T causes display in lower right hand corner

of the screen (almost like cursor positioning)

3)I'm not sure what other characters are active within ()

but I the following seems to function correctly and ignores
the E/T logic mentioned above

REV SYSPROG ()BATCH.JOBS

 will allow me to setup night time processing, and probably
 anything else I might want to do in the future

Thanks, Rich


At 03 MAR 2002 02:12PM [url=http://www.sprezzatura.com" onMouseOver=window.status=Click here to visit our web site?';return(true)]The Sprezzatura Group[/url] wrote:

Thanks for the feedback. The (T) is a trace setting to show you the currently executing opcode. We're pleased that it works for you!

The Sprezzatura Group

World Leaders in all things RevSoft


At 04 MAR 2002 03:44PM c milner wrote:

Thanks Sprezz, DOSCMDLINE works for me too.

The reason I wanted it, is to let me start my AREV app to run a number of functions automatically, then shut itself down.

I didn't want to set up additional user names and passwords, so instead I just use something like:

AREV.EXE SYSPROG /X /CODEWORD

where /CODEWORD indicates the task I want run…

What I've done is written a simple Windows shell program where the user can make a series of choices, which in turn will be run by my AREV app.


At 25 FEB 2003 06:11AM Hippo wrote:

There is typo (not working well for looooong command lines)

A =\02000000000000000000EB4A90000000\

A := \00000000000000000000000000000000\

A := \00000000000000000000000000000000\

A := \00000000000000000000000000000000\

A := \00000000000000000000000000000000\

A := \000000240000B462CD212EC706580000\

A := \008EC3BF8100BE1100268A053C0D741C\

Replace row

A := \3C0A74183C0074142E833E580064740C\

                              ^^  

Should be ^

                              vv 

A := \3C0A74183C0074142E833E580046740C\

…. everything else OK

A := \2E8804462EFF06580047EBDD1E8CCA8E\

A := \DABE11002E8B0E5800B40FFC2EFF1E0A\

A := \0057F3A45F2E8B0E580033C033D2B410\

A := \2EFF1E0A001FCB\

OPEN 'BP' TO BP.FILE THEN

WRITE A TO BP.FILE,'$DOSCMDLINE'

END

P.S.: Is interface of call cs:000A somewhere documented?

View this thread on the forum...

  • third_party_content/community/commentary/forums_nonworks/7a1ff4937605f7d788256b6f00032c4d.txt
  • Last modified: 2024/01/04 21:00
  • by 127.0.0.1