On Mon, Apr 21, 2008 at 12:28 PM, Philippe Lang
<philippe.lang / attiksystem.ch> wrote:
> Hi,
>
>  I'm trying to setup a win32 ole callback that would notify me that the
>  application that was launched has quit, in order to release the process
>  from memory.
>
>  The code I'm playing with looks like:
>
>       @@access = WIN32OLE.new('Access.Application')
>       @@access.OpenCurrentDatabase(@database)
>
>       begin
>
>         @@event_sink = WIN32OLE_EVENT.new(@@access, <???>)
>         stop_listening = false
>         @@event_sink.on_event("Quit") do |*args|
>                 puts "Access application has quit!"
>                 stop_listening = true
>         end
>
>         WIN32OLE_EVENT.message_loop until stop_listening
>
>       rescue Exception => e
>         puts e.message
>       end
>
>  I cannot find any event interface that would notify me that the MS
>  Access application has quit. I checked with "Simple OLE Browser", but no
>  luck. And most examples regarding WIN32OLE_EVENT are done with Internet
>  Explorer.
>
>  Does anyone have an idea?
>
>  Thanks,
>
>  Philippe Lang
>
>

WMI Events?  Here's a VBScript example that will notify when a process
terminates.

http://www.microsoft.com/technet/scriptcenter/scripts/default.mspx?mfr=true

On a side note, this is my third WMI related post in two days.  I hope
I'm not annoying anyone ;-)

hth,

Gordon