My 16bit application requires the presence of a DOS environment variable. On startup I check for it. If it does not exist I display an error. I would like create the environment variable through my VB code. Is this possible?
Unfortunately, no, that is not really possible. Under Windows 3.x, it's concievable that you could trace through the chain of memory blocks allocated, and write to the master environment block, but that's a technique that's not only fraught with potential disaster but also not future-compatable at all.
I would suggest, instead, that you prompt the user for this information if it's missing, and offer to update their AUTOEXEC.BAT so it will be there next time around.