[squeak-dev] Terminate a process in a Win32Shell

David T. Lewis lewis at mail.msen.com
Fri Apr 16 19:19:56 UTC 2010


On Thu, Apr 15, 2010 at 10:53:37PM -0500, Arushi Aggarwal wrote:
> On Thu, Apr 15, 2010 at 11:33 AM, David T. Lewis <lewis at mail.msen.com> wrote:
> > On Thu, Apr 15, 2010 at 10:26:07AM -0500, Arushi Aggarwal wrote:
> >> On Wed, Apr 14, 2010 at 8:28 PM, Chris Muller <asqueaker at gmail.com> wrote:
> >> > Hi Arushi,
> >> >
> >> >> r = t fork.
> >> >
> >> > Even if you corrected this assignment, you would only have a Smalltalk
> >> > "Process" object, which only terminates processes running in or above
> >> > the interpreter; they have nothing to do with OS processes.
> >> >
> >> > To control OS processes, check out OSProcess
> >>
> >> I am working on windows, and using OSProcess/Squeak Shell I was not
> >> able to get it to execute an executable. Any pointers for that?
> >> >
> >
> > Information on OSProcess is here:
> > ?http://wiki.squeak.org/squeak/708
> >
> > I have not updated the page in a while, but the information on that
> > page is still valid.
> >
> > The OSProcessPlugin for Windows is not distributed with the VM, so
> > you would need to build your own if you want to do this. With the
> > plugin in place, you can start external processes and terminate them
> > with #terminate as you would expect.
> >
> > To build the plugin you need the OSProcessPlugin and VMMaker packages
> > from http://squeaksource.com.
> 
> I got OSProcessPluginV4-3-7.sar and the VMMakerPackage. The VMMaker
> does not  list OSProcessPlugin as an available Plugin.
> 
> How do I make it so/what file is it missing?

OSProcessPlugin is a separate package from OSProcess itself. The home
page is http://wiki.squeak.org/squeak/3349. You can use the SAR file
from that page, but it is better to go to http:squeaksource.com and
get the latest version of the package in "OSProcessPlugin". Once you
have loaded this, you should be able to open a VMMaker window and find
Win32OSProcessPlugin as an available plugin.

Follow the normal instructions for building on Windows
(http://squeakvm.org/win32/compiling.html), with the following two notes:

1) OSProcessPlugin (OSPP) requires two header files:
    platforms\Cross\plugins\FilePlugin\FilePlugin.h
    platforms\Cross\plugins\SocketPlugin\FilePlugin.h
The normal Makefile probably will not find these, so you can either fix
your makefile to find them, or just copy them somewhere where they will
be included.

2) Some OSPP functions will not work (opening stdout, console, etc)
on Windows unless you make changes to the file handle registry in
platforms\win32\vm\sqWin32HandleTable.h.

Dave




More information about the Squeak-dev mailing list