Well, I have some horribly written code LOL for you to register a profile.
This is how I got it to work. One of those "Get working now, will fix and
comment later" type of things.
//////////////////////////////////////////////////////////////////////
nsCOMPtr<nsIFile> nsCOMPtr_nsIFile = NULL;
nsCOMPtr<nsILocalFile> nsCOMPtr_nsILocalFile = NULL;
nsCOMPtr<nsProfileDirServiceProvider> nsCOMPtr_nsProfileDirServiceProvider =
NULL;
rv = NS_GetSpecialDirectory(NS_APP_APPLICATION_REGISTRY_DIR,
getter_AddRefs(nsCOMPtr_nsIFile));
rv = nsCOMPtr_nsIFile->Append(NS_LITERAL_STRING("GeckoTest1"));
nsCOMPtr_nsILocalFile = do_QueryInterface(nsCOMPtr_nsIFile);
rv = NS_NewProfileDirServiceProvider(PR_TRUE,
getter_AddRefs(nsCOMPtr_nsProfileDirServiceProvider));
rv = nsCOMPtr_nsProfileDirServiceProvider->Register();
rv =
nsCOMPtr_nsProfileDirServiceProvider->SetProfileDir(nsCOMPtr_nsILocalFile);
//////////////////////////////////////////////////////////////////////
I'm not sure how/if you can do it through the XPCOM/COM object thingy you
have. If not, just put this bit of code somewhere right after you
initialize your XPCOM/Embedding. The only thing you may have with this is
possibly link errors and "can't find this function" type of thing. Make sure
to include: nsProfileDirServiceProvider.h and nsLiteralString.h among a few
others. Also be sure you have all the libs linked...this is what I've
linked and it seems to work good.
xpcom.lib embed_base_s.lib nspr4.lib plc4.lib plds4.lib
profdirserviceprovider_s.lib
Hope this helps,
Niky
"Sami Vaaraniemi" <[EMAIL PROTECTED]> wrote in message
news:[EMAIL PROTECTED]
>
> "Michal Ceresna" <[EMAIL PROTECTED]> wrote in message
> news:[EMAIL PROTECTED]
> > On Monday 13 June 2005 12:02, Sami Vaaraniemi wrote:
> > Hello,
> >
> >> Assertion failures (in no particular order):
> >>
> >> ASSERTION: RootScrollFrame is not scrollable?, file
> >> d:/mozilla/layout/html/base/src/nsPresShell.cpp, line 3573
> >>
> >> ASSERTION: Could not get profile directory lock.: 'Error', file
> >> d:/mozilla/profile/src/nsProfile.cpp, line 1183
> >>
> >> ASSERTION: failed to open cookies.txt for writing: 'Error', file
> >> d:/mozilla/netwerk/cookie/src/nsCookieService.cpp, line 1043
> > Seeing the error you get, did you initialize (create) the profile on
> > startup?
> >
> > best regards,
> > Michal Ceresna
>
> Thanks for your reply.
>
> No, I did not create a profile. I just built it, registered the COM
> component and started to use it. How do I create the profile, I could not
> find anything on the COM component that would allow me to do this?
>
> Regards,
> Sami
>
>
_______________________________________________
mozilla-embedding mailing list
[email protected]
http://mail.mozilla.org/listinfo/mozilla-embedding