From:             [EMAIL PROTECTED]
Operating system: 2000
PHP version:      4.1.1
PHP Bug Type:     COM related
Bug description:  COM Singleton

I noticed that loading a COM object that has been declared as a singleton
locks up the browser. I created a simple COM object (header follows), and
if I add the SINGLETON macro to the com object, it will hang on
instantiation. If anybody has a solution, or a work around, I would
greatly appreciate it. It looks as though only simple apartment level COM
objects are acceptable. Thank you. Tom Lee



class ATL_NO_VTABLE CIt : 
        public CComObjectRootEx<CComSingleThreadModel>,
        public CComCoClass<CIt, &CLSID_It>,
        public IDispatchImpl<IIt, &IID_IIt, &LIBID_TESTLib>
{
public:
        CIt()
        {
        }

DECLARE_REGISTRY_RESOURCEID(IDR_IT)

// Below macro will destroy the object
DECLARE_CLASSFACTORY_SINGLETON(CIt) // <<<< This it it!!!

DECLARE_PROTECT_FINAL_CONSTRUCT()

BEGIN_COM_MAP(CIt)
        COM_INTERFACE_ENTRY(IIt)
        COM_INTERFACE_ENTRY(IDispatch)
END_COM_MAP()

// IIt
public:
        STDMETHOD(Now)();
protected:

};
-- 
Edit bug report at http://bugs.php.net/?id=15635&edit=1
-- 
Fixed in CVS:        http://bugs.php.net/fix.php?id=15635&r=fixedcvs
Fixed in release:    http://bugs.php.net/fix.php?id=15635&r=alreadyfixed
Need backtrace:      http://bugs.php.net/fix.php?id=15635&r=needtrace
Try newer version:   http://bugs.php.net/fix.php?id=15635&r=oldversion
Not developer issue: http://bugs.php.net/fix.php?id=15635&r=support
Expected behavior:   http://bugs.php.net/fix.php?id=15635&r=notwrong
Not enough info:     http://bugs.php.net/fix.php?id=15635&r=notenoughinfo
Submitted twice:     http://bugs.php.net/fix.php?id=15635&r=submittedtwice

Reply via email to