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