[comp.sys.ibm.pc] Run out Environment in DesqView Windows

paine@fungus.dec.com (Willy Paine) (04/22/89)

I have problem on running out of environment in each DESQview window
and I can not add any more set or path name in batch file inside DV.
I can increase environment in config.sys for dos but it does not
work inside DESQview.   I am using Compaq 386 4 megB memory using 
DOS 3.31.
 
Thanks in advance....
 
Willy
 

akcs.wek@ddsw1.MCS.COM ([Bill Kuykendall]) (04/22/89)

The problem is that DESQview is simply running a secondary command 
processor to create (most of) its windows, and 'DOS has a few 
quirks in dealing with expanded environments in a secondary shell.

Using a SHELL= command in your config.sys allows you to specify the
size of your primary command processor (you know that, or you wouldn't
have this problem) but the same mechanism does not work when loading
a non-permanent (/P) command.com.  The size of the environment table
in secondary shells is determined by A) the size of the _contents_ of
the parent shell's environment, or B) the default size of 160 bytes, 
whichever is larger.

There is no fix, but there is a simple workaround.  Assign a couple of
dummy variables of 100+ characters (max length is 127 for the string=value
combination) and then have your batch files delete those before attempting
to set new strings.  Hope this helps.

16012_3045@uwovax.uwo.ca (Paul Gomme) (04/23/89)

In article <8904211719.AA24430@decwrl.dec.com>, paine@fungus.dec.com (Willy Paine) writes:
> I have problem on running out of environment in each DESQview window
> and I can not add any more set or path name in batch file inside DV.
> I can increase environment in config.sys for dos but it does not
> work inside DESQview.   I am using Compaq 386 4 megB memory using 
> DOS 3.31.

Try spawning COMMAND.COM with the /e:nnnnn parameter.  For example, specify
COMMAND.COM as the program to run, and specify the following as the command
line parameters:
	/e:1000 /c foobar.bat
-------------------------------------------------------------------------
Paul Gomme        Bitnet:  gomme@uwovax.bitnet      ARPA:    gomme@uwo.ca

paul_gauthier@brains.UUCP (Paul Gauthier) (04/23/89)

Re: Run out Environment in DesqView Windows:
   I had the same problem, my batch files tried to set environ space inside a
DV window, but there was none left and it didn't work. The solution is to
specify in the "Program to run" field the path to your COMMAND.COM. Then, in
the "Command line parameters" field place something like:
         /e:XXX /c BATCH.BAT
   Replace the "XXX" with the new environment size, in segments or something,
not sure, I use 512, and replace BATCH.BAT with the batch file you want to
run as that window. Thus, you spawn a new command.com that allocates the
proper amount of space for a larger environment. I have no idea what will
happen if you specify a environ size larger than the one you specified in
your CONFIG.SYS file. Experiment. :-)
   Also, you'll have to make sure the "Exit on return to DOS" param in the DV
setup screen is set to No, since it will basically be running DOS as far as
DV knows.
   Hope this helps...  
--
   -===------===-    From Paul Gauthier at:
  -==-==----== ==-   Cerebral Cortex BBS
 -==-------==------  (902)462-7245 3/1200 8N1    -Gatewayed to Usenet-
  -==-==----==-==-   24h/7d
   -===------===-    {uunet, utai, watmath}!dalcs!iisat!brains!paul_gauthier

davidr@hplsla.HP.COM (David M. Reed) (04/25/89)

I do not know the reason for the problem.  I suspect that, though you may
reserve extra environment space with the /E option in CONFIG.SYS, if that
space is not all in use when DESQview starts up then you lose most of it
(as though it were "free" memory).  To deal with this, I create a variable
in my AUTOEXEC.BAT file that fills up a lot of space:

SET XX=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

You could do this with one or more variables, each using as much space as you
want to reserve.  Then I have DESQview start programs with a BATch file that
specifies

SET XX=

This will free up all of the environment space used by the variable, which
will then allow longer PATH or PROMPT definitions, or the defining of other
variables unique to that window/program.

It certainly is not glamorous, but it really works well for me.

paine@rust.dec.com (Willy Paine) (04/25/89)

Cc: 
 
Does command /c foobar.bat /e:1000  take any more memory spaces at all?
I am running BBS inside DesqView for near three years but unfortunatly
BBS and UFGATE (Un*x & FidoNet Gateway) softwares are getting bigger
and more complex.  Often there is useful utility program that needs more
set dos environment etc..  I am still using older DesqView v2.0+ because
version 2.2 has many bugs, especially lock up com port!!
 
I would like to see more memory inside each windows plus environment. I
am not really happy with tech support at Quarterdeck at all..
 
Willy