Home All Groups Group Topic Archive Search About
Author
23 Mar 2006 7:14 PM
ram
I am facing run time issue with SQL 2005 SP1 on Windows 2003 SP1 X64.

SQL returns error, saying class not registered when we call CoCreateInstance()
--
  HRESULT hr = CoCreateInstance(CLSID_SQLDMOServer,  NULL,
                        CLSCTX_INPROC_SERVER|CLSCTX_ACTIVATE_32_BIT_SERVER,
                        IID_ISQLDMOServer,     (LPVOID *) pSQL);
--

We also tried following flags:
a CLSCTX_INPROC_SERVER
  We get Run time error popup
b CLSCTX_ACTIVATE_32_BIT_SERVER
- class not registered
c. CLSCTX_ACTIVATE_64_BIT_SERVER
- class not registered

Which is the right way to call CoCreateInstance for SQL 2005 on X64?

thanks,

ranjith

Author
23 Mar 2006 8:26 PM
David Gugick
ram wrote:
> I am facing run time issue with SQL 2005 SP1 on Windows 2003 SP1 X64.
>
> SQL returns error, saying class not registered when we call
> CoCreateInstance() --
>  HRESULT hr = CoCreateInstance(CLSID_SQLDMOServer,  NULL,
>
>
> CLSCTX_INPROC_SERVER|CLSCTX_ACTIVATE_32_BIT_SERVER,
> IID_ISQLDMOServer,     (LPVOID *) pSQL);

There is no SQL Server 2005 SP1 yet, it's only a CTP. Are you running
SQL Server 2005 RTM? What SQL Server version x86 or x64? I don't
understand the line of code, but I do see one of the parameters,
CLSCTX_ACTIVATE_32_BIT_SERVER, seems to indicate this is a 32-bit
server, which it isn't.

Have a look at the Developing SQL-DMO Appls Using C or  C++ in BOL:
ms-help://MS.SQLCC.v9/MS.SQLSVR.v9.en/dmo9/html/9d75a3f5-236e-4747-9135-2323376bced8.htm



--
David Gugick - SQL Server MVP
Quest Software

AddThis Social Bookmark Button