[prev in list] [next in list] [prev in thread] [next in thread] 

List:       ms-java-com
Subject:    ComLib.release() behaves abnormally!!?
From:       Ken Wong <ken_wong () EMASS ! COM>
Date:       1998-02-27 18:17:16
[Download RAW message or body]


Hi all, I'm trying to call ComLib.release to force my COM objects to unload from \
memory, here's the code:

Case 1:
Try {
        ComLib.release(obj1);
        ComLib.release(obj2);
        ComLib.releae(obj3);
}
catch (ComFailException e) {
        cout << "error!";
}

After executing this code, obj1 sucessfully uload from memory, but obj2 andobj3 did \
not, yet no error were reported. If I swap the order the code to the following,

Case 2:
Try {
        ComLib.release(obj2);           // Now this is call first.
        ComLib.release(obj1);
        ComLib.releae(obj3);
}

This time obj2 successfully uloaded from memory, but obj1 and obj3 did not. Again no \
exception are thrown. 

Case 3:
If obj3 happens to be a NULL, then a NULL exception is throw, both obj1 and obj2 \
successfully uloaded from memory (they both disappear from the task manger: process \
view), and the applet hung due to the uncatch exception.

Is this a bug in MS VM? Has anyone has any problem release mutiple COM objects from \
java? I'm totally lost in whats going on, I would greatly appreciated any help. \
Thanks in advance.

PS. Obj1, obj2, and obj3 are all COM in-proc server .EXE developed in VC++.

----------------------------------------------------------------
Users Guide http://www.microsoft.com/sitebuilder/resource/mailfaq.asp
contains important info including how to unsubscribe.  Save time, search
the archives at http://microsoft.ease.lsoft.com/archives/index.html


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic