SQL - COM y SQL

 
Vista:

COM y SQL

Publicado por Orlando (10 intervenciones) el 17/05/2005 17:09:24
Generé un COM en VB.net. Con el Regasm registré el dll en el registro de windows pero no logro que sql server pueda verlo por ningun lado.
No se si alguien sabrá de esto un poco más que me pueda a yudar.
Esto es lo que hago :

-- Crear una instancia del componente
EXEC @ValorDeRegreso = sp_OACreate '{D297525E-30DA-32EF-B567-C168E03DCC80}', @com OUTPUT
IF (@ValorDeRegreso <> 0) -- Preguntar por algún error
BEGIN
EXEC sp_OAGetErrorInfo @com, @OrigenDelError OUTPUT, @DescripcionDelError OUTPUT
SELECT [Origen del error] = @OrigenDelError, [Descripcion] = @DescripcionDelError
RETURN
END

Pero me da lo siguiente:
Origen del error:ODSOLE Extended Procedure
Descripción: Class not registered

lo que indica, claro está, que la clase no se encuentra registrada.
Entonces lo que no se es como registrar el com para que pueda ser utilizado por SQL server
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:COM y SQL

Publicado por Isaías Islas (5072 intervenciones) el 17/05/2005 17:13:19
Si lo que deseas es REGISTRAR UN EXTENDED STORE PROCEDURE, debes hacer lo en la base MASTER en la opcion de Extended Store Procedures.

¿Es eso?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:COM y SQL

Publicado por Orlando (10 intervenciones) el 17/05/2005 20:38:19
No es,no es eso
Lo que requiero es saber donde registrar un dll de un COM para que el extended store procedure sp_OACreate pueda crear una instancia del COM
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:COM y SQL

Publicado por Orlando (10 intervenciones) el 18/05/2005 00:35:20
Donde tengo que registrar un COM para que SQL pueda trabajar con él
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:COM y SQL

Publicado por Isaías Islas (5072 intervenciones) el 18/05/2005 01:03:10
Por eso, una DLL la puedes registrar en la master.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:COM y SQL

Publicado por Orlando (10 intervenciones) el 18/05/2005 16:21:38
Pues entonces creo que por ahí es mas o menos por donde va la cosa.
Como registro una dll en la master?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:COM y SQL

Publicado por Isaías Islas (5072 intervenciones) el 18/05/2005 16:25:18
Estando en la consola de administracion, te vas a la base MASTER y donde dice "Extended Store Procedure", boton derecho, "New Extended Store Procedure" y te va a pedir que le des un nombre y la ruta donde se encuentra tu DLL.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:COM y SQL

Publicado por Orlando (10 intervenciones) el 18/05/2005 16:57:31
ok, pero lo que estaría haciendo en ese caso sería registrar un sp extendido.
Lo que pretendo que a traves del sp_OACreate crear una instancia de un COM.
Por ejemplo:
sp_OACreate 'SQLNET.ComClass'
__________________________________

'SQLNET.ComClass' es el nombre de la clase que quiero instanciar (aqui lo que hace el sp es buscar el ensamblado de esa clase) pero no se donde colocar el ensamblado para que el sp lo pueda utilizar.

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:COM y SQL

Publicado por Isaías Islas (5072 intervenciones) el 18/05/2005 18:44:53
Intenta colocarlo donde esta instalado SQL o bien, colocalo en la carpeta \\WINNT\SYSTEM32.

Ahora bien debes REGISTRARLA con REGSRV32, ademas de tomar en cuenta que sólo los miembros de la función fija de servidor sysadmin pueden ejecutar sp_OACreate.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:COM y SQL

Publicado por Orlando (10 intervenciones) el 18/05/2005 19:08:56
Para poder registrar un dll con Regsvr32 debe tener esta alguna característica especial porque cuando ejecuto el comando para registrarla me dice que el dll fue descargado pero que no se registró correctamente porque no encuentar el punto de entrada DllRegisterServer
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:COM y SQL

Publicado por Isaías Islas (5072 intervenciones) el 19/05/2005 19:22:42
Lee este articulo:

http://support.microsoft.com/default.aspx?scid=kb;EN-US;194661

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar