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

Вот часть кода COMDLL
Код:
type
  TIp2Com = class(TAutoObject, IIp2Com)
 
  protected
function F_IXML_OBJECT(const aPar: WideString): IUnknown; safecall;
end;
 function GetXML(Str : String) : IUnknown;
 
 implementation
 
 
 
uses ComServ;
function TIP2COM.F_IXML_OBJECT(const aPar: WideString): IUnknown; safecall;
 begin
   try
   Result:=GetXML(aPar);
   except
     try
     Result:=iXmlObjCreate(aPar) ;
     except
       ShowMessage('Îøèáêà ñîçäàíèÿ îáúåêòà');
       end;
       end;
 end;
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;
Ответить с цитированием