If you want to write headless systems using VASmalltalk under Windows you may consider writing a NT service.
I do not like this, because a service may get special rights and you have to install it – the handling is more difficult than normal programs. I like to copy programs from one place to another and a double-click and they run. No installation – nothing more.
Another way to write headless systems are programs using esvio.exe as starting program. Programs with esvio.exe always starts with a terminal window opened and this windows stays up as long as the program runs. Unusual for Windows applications …
You can minimize this windows with a special command line parameter – but it always stays there on the bottom of your screen and if you have an infrastructure of dozen of VASmalltalk programs this way – its not a very nice way for the users.
But there is a solution for this problem: the API call “FreeConsole()”. I added this – as a reachable method – to MSKPlatformExtension V 1.24 – available at vastgoodies.com.
Configurable via a special setting I now call the MSKOperatingServices>>FreeConsole after start of my program. Under Linux this method actually does nothing.
But the API-call is not enough – you have to start your esvio-based program via the “start” command within a batch file like:
start ..\server\bin\esvio -i..\ics\win_pdfservice.ic -ini:win_pdfservice.ini >out4.txt
Now you see a window for a short moment of time (while executing the bat file) and the esvio program runs/starts (in the background) without any window. You can only see it in the process manager.