[переписано, чтобы быть более понятным]с использованием ATL компонента в Delphi
Я потерял пытаюсь использовать COM-объект в Delphi. Объект был создан с использованием Visual Studio ATL.
Я испытал объект в VBScript:
Set ourObj = Server.CreateObject("JC_ATL_Q.JCsimple")
ourJCversion = ourObj.JCversion
Response.Write "<li>Get: JCversion = " + cstr(ourJCversion)
В Delphi, я последовал за:
создать код, приведенный ниже, но при этом возникает ошибка
"Указанная процедура не может быть f ound "
Я проверил реестр, и TGUID кажутся правильными.
Я делаю правильную вещь для доступа к интерфейсу IDispatch? Есть ли способ получить дополнительную информацию о том, что происходит не так?
IJCsimple = interface(IUnknown)
['{96154141-4169-4321-BADC-A08F1B2D53A4}']
function get_JCversion: Integer; stdcall;
end;
const
CLASS_JCsimple: TGUID = '{6724FCDA-14F6-4D40-82A1-C8FD451BED9C}';
var
Form2: TForm2;
Result : variant;
implementation
procedure TForm2.Button1Click(Sender: TObject);
begin
Result := CreateComObject(CLASS_JCsimple) as IJCsimple;
end;
end.
Решение: Как Remy Лебо указывает, что не должен изобретать колесо, но следует использовать компонент >> Инструмент импорта компонентов >> Импорт библиотеки типов
Что ваш конкретный вопрос. –
Попытка доступа к собственности «Версия» вызывает исключение. Может ли кто-нибудь помочь получить эту сортировку? – jcsubmit
Но в чем вопрос? Какие конкретные детали в тексте вы хотите, чтобы мы обращались. «Может ли кто-нибудь помочь», это не вопрос. –