Re: Starting Mozilla from XPCShell (revisited)

[email protected] Sun, 15 Sep 2002 13:13:06 +0200
Newsgroups gmane.comp.mozilla.devel.xpcom
Organization Another Netscape Collabra Server User
Message-ID <[email protected]>
Ugen wrote:
> A while ago in a thread in this group the following code has been
> suggested to start mozilla from xpcshell:
> 
> ----------- 8<--------------- cut here ----------- 8< -------------
> 
> var EventQClass =
> Components.classes['@mozilla.org/event-queue-service;1'];
> 
> var EventQObj	=  EventQClass.getService(Components.interfaces.nsIEventQueueService);
> 
> EventQObj.createThreadEventQueue();
> 
> var AppShellClass = 
> Components.classes['@mozilla.org/appshell/appShellService;1'];
> var AppShellObj = 
> AppShellClass.getService(Components.interfaces.nsIAppShellService);
> 
> var URLClass =  Components.classes['@mozilla.org/network/standard-url;1'];
> var URLObj = URLClass.createInstance(Components.interfaces.nsIURL);
> 
> URLObj.scheme="file";
> URLObj.path="/tmp/test.xul";
> 
> AppShellObj.Initialize(null,null);
> 
> 
> var test = new Object();
> toto = AppShellObj.CreateTopLevelWindow(null,URLObj,
> 	true,true,
> 	Components.interfaces.nsIWebBrowserChrome.CHROME_ALL,
> 	640,480,test);
> 
> AppShellObj.Run();
> 
> ----------- 8<--------------- cut here ----------- 8< -------------
> 
> It seemed to work for some people judging by discussion. However,
> here is what i get with my freshly compiled mozilla-1.0
> 
> a) If i run the code as provided i get:
> 
> :uncaught exception: [Exception... "Component returned failure code:
> 0xc1f30001 (NS_ERROR_NOT_INITIALIZED) [nsIURL.scheme]"  nsresult:
> "0xc1f30001 (NS_ERROR_NOT_INITIALIZED)"  location: "JS frame ::
> /tmp/test.js :: <TOP_LEVEL> :: line 14"  data: no]
> 
> b) removing URLObj.scheme="file" gets me just a bit further:
> TypeError: AppShellObj.Initialize is not a function
> 
>  Well, i can only assume that the provided interface to AppShell has
> changed
> or may be i need to use another object alltogether?
>  
>  In a nutshell, i will need to create an application here where i will
> be able
> to load and control mozilla from xpcshell using javascript or,
> ideally, using
> Python XPCOM (but that's for later).
> 
> Advice?


Hi !

In my XUL-Application I took your script calling a other 
XUL-Application. But I get a Errormessage !

Error: uncaught exception: Permission denied to get property 
UnnamedClass.classes

This error appears on the line :

var EventQClass = Components.classes['@mozilla.org/event-queue-service;1'];


Do you know the reason ?

Can you give me an advice ?

Hermann Schenck

[email protected]