Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.06.25;
Скачать: CL | DM;

Вниз

EOleSysError: Class not registered(и снова про СОМ)   Найти похожие ветки 

 
deplhi   (2006-06-02 22:57) [0]

Написал СОМ-сервер(по примеру из книги) с одним методом без библиотеки типов, откомпилировал, созданную длл зарегистрировал в ОС с помощью regsvr32. В новом приложении-клиенте добавил ссылку на интерфейсный модуль и забил следующий код:
procedure TForm1.Button1Click(Sender: TObject);
var t: ItestCom;
begin
 t := CreateComObject(Class_testCOM) as ItestCom;
 t.showIt("Hello!!!");
end;


код интерфейсного модуля:
unit unit2;

interface
const
 Class_testCOM: TGUID = "{D58FA6AB-D9E7-4069-8EC7-C56B91D74AD1}";

type
 ItestCOM = interface["{4A1FD184-F248-42F6-A657-DB1E1562FF7E}"]
   procedure showIt(s:string);
 end;

implementation

end.


В общем клиент компилится без ошибок, а в ран-тайме выдает ошибку: "EOleSysError: Class not registered". А теперь внимание вопрос: "Какого хрена ему еще надо? О какой регистрации идет речь?"


 
deplhi   (2006-06-02 23:41) [1]

Да и еще одно. Out - параметры обязательно должны быть ссылочного типа? Разве нельзя передавать по значению?


 
isasa ©   (2006-06-03 10:29) [2]

ItestCOM = interface(IDispatch)
   ["{4A1FD184-F248-42F6-A657-DB1E1562FF7E}"]
?


 
deplhi   (2006-06-03 14:57) [3]


> ItestCOM = interface(IDispatch)
>    ["{4A1FD184-F248-42F6-A657-DB1E1562FF7E}"]
> ?

ну и какие здесь проблемы? Да и по-другому вопросу нет ответа.((



Страницы: 1 вся ветка

Текущий архив: 2006.06.25;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.047 c
2-1149451967
werb
2006-06-05 00:12
2006.06.25
диаграмма


2-1149505921
FiJer
2006-06-05 15:12
2006.06.25
Как можно выровнить текст в Edit по вертикали?


15-1148824131
[wl]
2006-05-28 17:48
2006.06.25
Freecell, он же "Солитер", стандартная игра к Windows 2000/XP


2-1149531201
HoBBiT.cmp
2006-06-05 22:13
2006.06.25
Матрицы


2-1149496259
redlord
2006-06-05 12:30
2006.06.25
как компоненту бросить сообщение даблклик