Hi Vladimir,
thanks for your fast reply - with JExplorer 2.6.143 the automation.close() works without any Exceptions.
The most important issue (unexpected quit on Win 7 ) still exists (btw this works fine under Windows 2008 Server... :-) ).
Here's the Console-Log from the sample code under Win 7 with JExplorer 2.6.143 - onQuit occured and then the COM-Object is diconnected and automation.close() fails.
2013-01-10 10:55:45,641 [Main message loop] DEBUG com.jniwrapper.win32.MessageLoopThread - MessageLoopThread.run()
2013-01-10 10:55:45,641 [Main message loop] DEBUG com.jniwrapper.win32.MessageLoopThread - MessageLoopThread.run(): got threadID = 2056
2013-01-10 10:55:45,766 [Main message loop] DEBUG com.jniwrapper.win32.MessageLoopThread - MessageLoopThread.run(), messageQueueIsReady
2013-01-10 10:55:45,906 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IClassFactoryServer - IClassFactoryServer.<init>, Instance class: class com.jniwrapper.win32.ie.BrowserEventsObserver
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - Public property: com.jniwrapper.win32.ie.BrowserEventsObserver#b is not acceptable for Automation, skipping it.
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - Public property: com.jniwrapper.win32.ie.BrowserEventsObserver#c is not acceptable for Automation, skipping it.
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - Public property: com.jniwrapper.win32.ie.BrowserEventsObserver#d is not acceptable for Automation, skipping it.
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - Public property: com.jniwrapper.win32.ie.BrowserEventsObserver#f is not acceptable for Automation, skipping it.
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - Public property: com.jniwrapper.win32.ie.BrowserEventsObserver#g is not acceptable for Automation, skipping it.
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - Public property: com.jniwrapper.win32.ie.BrowserEventsObserver#j is not acceptable for Automation, skipping it.
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - Public property: com.jniwrapper.win32.ie.BrowserEventsObserver#k is not acceptable for Automation, skipping it.
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - Public property: com.jniwrapper.win32.ie.BrowserEventsObserver#l is not acceptable for Automation, skipping it.
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - Public property: com.jniwrapper.win32.ie.BrowserEventsObserver#m is not acceptable for Automation, skipping it.
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - Public property: com.jniwrapper.win32.ie.BrowserEventsObserver#n is not acceptable for Automation, skipping it.
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - Public property: com.jniwrapper.win32.ie.BrowserEventsObserver#p is not acceptable for Automation, skipping it.
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - Public property: com.jniwrapper.win32.ie.BrowserEventsObserver#q is not acceptable for Automation, skipping it.
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - Public property: com.jniwrapper.win32.ie.BrowserEventsObserver#s is not acceptable for Automation, skipping it.
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - Public property: com.jniwrapper.win32.ie.BrowserEventsObserver#u is not acceptable for Automation, skipping it.
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - Public property: com.jniwrapper.win32.ie.BrowserEventsObserver#v is not acceptable for Automation, skipping it.
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_downloadBegin was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_onMenuBar was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_onQuit was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_onStatusBar was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_onToolBar was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_onVisible was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_propertyChange was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_beforeNavigate2 was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_clientToHostWindow was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_commandStateChange was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_documentComplete was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_downloadComplete was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_fileDownload was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_navigateComplete2 was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_navigateError was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_newWindow2 was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_newWindow3 was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_onFullScreen was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_onTheaterMode was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_printTemplateInstantiation was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_printTemplateTeardown was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_privacyImpactedStateChange was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_progressChange was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_setSecureLockIcon was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_statusTextChange was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_titleChange was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_updatePageStatus was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_windowClosing was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_windowSetHeight was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_windowSetLeft was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_windowSetResizable was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_windowSetTop was not found
2013-01-10 10:55:45,937 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - PARAMS_windowSetWidth was not found
2013-01-10 10:55:45,953 [Main message loop] DEBUG com.jniwrapper.win32.com.server.CoInterfaceVTBL - Failed to invoke method: queryInterfaceAggregated; cause: COM object method returns error code: 0x80004002; E_NOINTERFACE (Schnittstelle nicht unterstützt)
2013-01-10 10:55:45,953 [Main message loop] DEBUG com.jniwrapper.win32.com.server.CoInterfaceVTBL - Failed to invoke method: queryInterfaceAggregated; cause: COM object method returns error code: 0x80004002; E_NOINTERFACE (Schnittstelle nicht unterstützt)
2013-01-10 10:55:45,953 [Main message loop] DEBUG com.jniwrapper.win32.com.server.CoInterfaceVTBL - Failed to invoke method: queryInterfaceAggregated; cause: COM object method returns error code: 0x80004002; E_NOINTERFACE (Schnittstelle nicht unterstützt)
2013-01-10 10:55:45,953 [Main message loop] DEBUG com.jniwrapper.win32.com.server.CoInterfaceVTBL - Failed to invoke method: queryInterface; cause: COM object method returns error code: 0x80004002; E_NOINTERFACE (Schnittstelle nicht unterstützt)
2013-01-10 10:55:45,953 [Main message loop] DEBUG com.jniwrapper.win32.com.server.CoInterfaceVTBL - Failed to invoke method: queryInterface; cause: COM object method returns error code: 0x80004002; E_NOINTERFACE (Schnittstelle nicht unterstützt)
2013-01-10 10:55:45,953 [Main message loop] DEBUG com.jniwrapper.win32.com.server.CoInterfaceVTBL - Failed to invoke method: queryInterface; cause: COM object method returns error code: 0x80004002; E_NOINTERFACE (Schnittstelle nicht unterstützt)
2013-01-10 10:55:46,031 [Main message loop] DEBUG com.jniwrapper.win32.com.server.CoInterfaceVTBL - Failed to invoke method: queryInterfaceAggregated; cause: COM object method returns error code: 0x80004002; E_NOINTERFACE (Schnittstelle nicht unterstützt)
2013-01-10 10:55:46,062 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - Could not find a method for DispID: 282, so returning DISP_E_BADINDEX
2013-01-10 10:55:46,062 [Main message loop] DEBUG com.jniwrapper.win32.com.server.CoInterfaceVTBL - Failed to invoke method: invoke; cause: COM object method returns error code: 0x8002000B; DISP_E_BADINDEX (Ungültiger Index.)
2013-01-10 10:55:46,062 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - Could not find a method for DispID: 282, so returning DISP_E_BADINDEX
2013-01-10 10:55:46,062 [Main message loop] DEBUG com.jniwrapper.win32.com.server.CoInterfaceVTBL - Failed to invoke method: invoke; cause: COM object method returns error code: 0x8002000B; DISP_E_BADINDEX (Ungültiger Index.)
2013-01-10 10:55:46,062 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - Could not find a method for DispID: 283, so returning DISP_E_BADINDEX
2013-01-10 10:55:46,062 [Main message loop] DEBUG com.jniwrapper.win32.com.server.CoInterfaceVTBL - Failed to invoke method: invoke; cause: COM object method returns error code: 0x8002000B; DISP_E_BADINDEX (Ungültiger Index.)
2013-01-10 10:55:46,078 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - Could not find a method for DispID: 282, so returning DISP_E_BADINDEX
2013-01-10 10:55:46,078 [Main message loop] DEBUG com.jniwrapper.win32.com.server.CoInterfaceVTBL - Failed to invoke method: invoke; cause: COM object method returns error code: 0x8002000B; DISP_E_BADINDEX (Ungültiger Index.)
2013-01-10 10:55:46,171 [main] INFO IEAutomationSamplePeer2 - sleep beginn....
2013-01-10 10:55:46,171 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - Could not find a method for DispID: 284, so returning DISP_E_BADINDEX
2013-01-10 10:55:46,171 [Main message loop] DEBUG com.jniwrapper.win32.com.server.CoInterfaceVTBL - Failed to invoke method: invoke; cause: COM object method returns error code: 0x8002000B; DISP_E_BADINDEX (Ungültiger Index.)
2013-01-10 10:55:46,235 [Main message loop] INFO IEAutomationSamplePeer2 - navigate state : 4
2013-01-10 10:55:46,235 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - Could not find a method for DispID: 283, so returning DISP_E_BADINDEX
2013-01-10 10:55:46,235 [Main message loop] DEBUG com.jniwrapper.win32.com.server.CoInterfaceVTBL - Failed to invoke method: invoke; cause: COM object method returns error code: 0x8002000B; DISP_E_BADINDEX (Ungültiger Index.)
2013-01-10 10:55:46,282 [Main message loop] INFO IEAutomationSamplePeer2 - onQuit closed false
2013-01-10 10:55:46,313 [Main message loop] DEBUG com.jniwrapper.win32.com.server.IDispatchServer - Could not find a method for DispID: 283, so returning DISP_E_BADINDEX
2013-01-10 10:55:46,313 [Main message loop] DEBUG com.jniwrapper.win32.com.server.CoInterfaceVTBL - Failed to invoke method: invoke; cause: COM object method returns error code: 0x8002000B; DISP_E_BADINDEX (Ungültiger Index.)
2013-01-10 10:55:51,182 [main] INFO IEAutomationSamplePeer2 - sleep ende...
com.jniwrapper.win32.com.ComException: com.jniwrapper.win32.com.ComException: COM object method returns error code: 0x80010108; RPC_E_DISCONNECTED (Das aufgerufene Objekt wurde von den Clients getrennt.)
at com.jniwrapper.win32.com.ComException.createComException(SourceFile:189)
at com.jniwrapper.win32.ah.invoke(SourceFile:265)
at $Proxy0.getBusy(Unknown Source)
at com.jniwrapper.win32.ie.by.close(Unknown Source)
at com.jniwrapper.win32.ie.IEAutomation.close(Unknown Source)
at IEAutomationSamplePeer2.main(IEAutomationSamplePeer2.java:75)
2013-01-10 10:55:51,182 [Main message loop] DEBUG com.jniwrapper.win32.MessageLoopThread -
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.jniwrapper.win32.ce.run(SourceFile:247)
at com.jniwrapper.win32.MessageLoopThread$ThreadSynchronizedAction.run(MessageLoopThread.java:620)
at com.jniwrapper.win32.MessageLoopThread$LoopThread.run(MessageLoopThread.java:562)
Caused by: com.jniwrapper.win32.com.ComException: COM object method returns error code: 0x80010108; RPC_E_DISCONNECTED (Das aufgerufene Objekt wurde von den Clients getrennt.)
at com.jniwrapper.win32.com.impl.IUnknownImpl.invokeStandardVirtualMethod(SourceFile:758)
at com.jniwrapper.win32.com.impl.IUnknownImpl.invokeStandardVirtualMethod(SourceFile:737)
at com.jniwrapper.win32.shdocvw.impl.IWebBrowserImpl.getBusy(Unknown Source)
... 7 more
2013-01-10 10:55:51,182 [JNIWrapper.ShutdownHook] DEBUG com.jniwrapper.win32.MessageLoopThread - Terminated thread Main message loop
2013-01-10 10:55:51,182 [JNIWrapper.ShutdownHook] DEBUG com.jniwrapper.win32.automation.types.BStr - Skip releasing of BSTR: 6665116 in JNIWrapper.ShutdownHook thread.
Caused by: com.jniwrapper.win32.com.ComException: COM object method returns error code: 0x80010108; RPC_E_DISCONNECTED (Das aufgerufene Objekt wurde von den Clients getrennt.)
at com.jniwrapper.win32.com.impl.IUnknownImpl.invokeStandardVirtualMethod(SourceFile:758)
at com.jniwrapper.win32.com.impl.IUnknownImpl.invokeStandardVirtualMethod(SourceFile:737)
at com.jniwrapper.win32.shdocvw.impl.IWebBrowserImpl.getBusy(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.jniwrapper.win32.ce.run(SourceFile:247)
at com.jniwrapper.win32.MessageLoopThread$ThreadSynchronizedAction.run(MessageLoopThread.java:620)
at com.jniwrapper.win32.MessageLoopThread$LoopThread.run(MessageLoopThread.java:562)
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------