VASmalltalk – Console Window under Windows

I posted something similiar around 2012. I uploaded now a new version of MSKPlatformExtension to vastgoodies.com.

I added “AllocConsole” to MSKOperatingServices to get the console window back. Therefore to summarize:

Perhaps you might know the fact, that if you start your VASmalltalk application with the command line parameter:

“-lcon”

you create a stdout channel within VA and you also get an extra console window.

Output to this window is done via the “TranscriptTTY default” instance e.g.

TranscriptTTY default nextPutAll: ‘Hello’

Normally a graphical application might not want to have an extra console window.

But a headless application is a total different thing – and a console window is perhaps very useful here.

If you want to have that window you must start your headless application with the option mentioned above.

Then the application starts with its own console window and all output can be read from that.

Now consider the idea that your headless application is a Seaside application and has a HTMl output and you want to get rid of that window after starting the application.

You may use the platform function “FreeConsole” to destroy the console window. Internally the stdout channel is still working – but of course: no console – no output.

To get a new console window you may use the platform function “AllocConsole()” and you get a new console window – and you see again your TranscriptTTY outputs.

I added these methods to MSKOperatingServices in the application MSKPlatformExtensions and uploaded the new version 1.36.01 to vastgoodies.com.

If you do start VA NOT with the options above – you do not get a console window, but with AllocConsole() you also get an empty console window – but TranscriptTTY is deactivated and I have not found a way (yet) to create a stdout channel from within Smalltalk.

This entry was posted in Smalltalk and tagged , , . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s