Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 ODSOLE и вызов метода с параметром типа LPUNKNOWN  [new]
dibr
Member

Откуда:
Сообщений: 11
Подскажите, что можно сделать в следующей ситуации?

Есть COM - сервер стороннего разработчика, в котором определены два объекта DeltaArch и DeltaArchProc. Используя sp_OACreate инициализируются эти объекты, а затем с помощью sp_OAMethod выполняются их методы. Проблема в следующем:

У объекта DeltaArchProc есть метод Init, вот его определение и описание:
HRESULT Init (LPUNKNOWN pDeltaArch);
Функция предназначена для инициализации объекта. Параметры:
pDeltaArch– созданный и проинициализированный заранее низкоуровневый интерфейс типа DeltaArch.
T-SQL выглядит примерно следующим образом:
DECLARE @Arch int
DECLARE @ArchProc int
DECLARE @Hr int

EXEC @Hr=sp_OACreate 'Dev.DeltaArch', @Arch OUT
EXEC @Hr=sp_OACreate 'Dev.DeltaArchProc', @ArchProc OUT
EXEC @Hr=sp_OAMethod @ArchProc, 'Init', NULL, @Arch
if (@Hr<>0)
BEGIN
 EXEC sp_DisplayOAErrorInfo2 @ArchProc, @Hr
 RETURN
END
Последний EXEC вылетает с ошибкой - несовпадение типов. При этом клиенты на C#, Delphi, VB и т.д. обрабатывают этот вызов без проблем. Что посоветуете ?
1 июл 09, 17:54    [7365120]     Ответить | Цитировать Сообщить модератору
 Re: ODSOLE и вызов метода с параметром типа LPUNKNOWN  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
EXEC @Hr=sp_OAMethod @ArchProc, 'Init',  @Arch

чет помоему вот так надо ? хотя проверить не на чем
-------------------------------------
Jedem Das Seine
1 июл 09, 18:41    [7365335]     Ответить | Цитировать Сообщить модератору
 Re: ODSOLE и вызов метода с параметром типа LPUNKNOWN  [new]
dibr
Member

Откуда:
Сообщений: 11
Maxx,

Пишет следующее:

OLE Automation Error Information
HRESULT: 0x80042725
Source: ODSOLE Extended Procedure
Description: sp_OAMethod usage: ObjPointer int IN, MethodName varchar IN [, @returnval <any> OUT [, additional IN, OUT, or BOTH params]]
1 июл 09, 18:48    [7365365]     Ответить | Цитировать Сообщить модератору
 Re: ODSOLE и вызов метода с параметром типа LPUNKNOWN  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
ошибка вышла...сорри
-------------------------------------
Jedem Das Seine
1 июл 09, 18:51    [7365379]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить