Delphi32.com - Home!
| Home/News | Downloads | Forums | D32 Magazine | Resources | Info and Facts |  
 
 'EOleSys..operation unavailable' error


EOleSys..operation unavailable" error using GetActiveOleObject. What is the cause and how do I resolve this error?   

    This occurs when using a Delphi automation server, or when the automation server (such as word.basic) is not running.

    procedure TForm .Button Click(Sender: TObject);
    var
      V: OleVariant;
    begin
      V := GetActiveOleObject('Word.Basic');
      V.FileNew;
      V.Insert('test');
    end;
    GetActiveOleObject is defined in ComObj.pas.  It converts the 
    classname to a guid, and passes the guid to the Windows api 
    call GetActiveObject.  
    function GetActiveOleObject(const ClassName: string): IDispatch;
    var
      ClassID: TCLSID;
      Unknown: IUnknown;
    begin
      ClassID := ProgIDToClassID(ClassName);
      OleCheck(GetActiveObject(ClassID, nil, Unknown));
      OleCheck(Unknown.QueryInterface(IDispatch, Result));
    end;
    The GetActiveOleObject uses an interface called 
    IRunningObjectTable.   We're not automatically registering 
    to this table, so to have this functionality you must get 
    this interface and use it's methods to register.
    

     



  << Previous Faq     Complete List     Next Faq >>  



 
 Hits/month  2,500,000+ 
 Downloads
 (Since May 2000)
 7,393,709 
 Total Files  6,023 
 Forum msgs  7,670 
 Articles/FAQs  70+/900+ 
Kylix
Tips n Tricks
FAQs
Knowledge Base
Bug Listings
Articles
Books
Newsgroups
Links
Submissions
Testimonials
Advertising
Contact Us
About Us
Search Amazon:
Top Selling Software at Amazon

| Home/News | Downloads | Forums | Resources | Info and Facts | Testimonials |
  Site Search:
 


Comments/Problems: Webmaster@delphi32.com
Copyright © 1998-2006, Delphi32.com. All rights reserved.
Terms of Use