Показать сообщение отдельно
  #8  
Старый 27.06.2023, 12:10
infopol infopol вне форума
Прохожий
 
Регистрация: 03.06.2021
Сообщения: 35
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию Сделал так

Код:
function GetXML(Str : String) : IUnknown;
var
  xmlDoc : TXMLDocument;
begin
  xmlDoc := TXMLDocument.Create(Nil);
if FileExists(str)  then
xmlDoc.LoadFromFile(str) else
  xmlDoc.LoadFromXML(str);
  try
  xmlDoc.Active := True;
  Result := xmlDoc as IUnknown;
     except
         Result:=nil;
     end;


  end;

Делаю COM DLL ,в ней функция
Код:
uses ComServ;
function TIP2COM.F_IXML_OBJECT(const aPar: WideString): IUnknown; safecall;
 begin
   try
   Result:=GetXML(aPar);
   except
       ShowMessage('Ошибка создания объекта!');
       end;
 end;
При вызове

ip2:=CreateOleObject('Ip2Com_events.Ip2Com');
oxml:=ip2.F_IXML_OBJECT(ExtractFilePath(ParamStr(0 )) + '/health.xml') ;

выдается ошибка на сервере.
Возможно ли использовать этот объект в COM DLL?
Ответить с цитированием