Yeah, unfortunately I did re-run regxpcom. I'm in the registry and I show up
in xpti.dat... making sure that they were the correct release versions. I'm
really hung up on preprocessor definitions, cuz I already ran into a really
insidious problem where Mozilla debug built with IBMBIDI defined, I didn't
build my dll with that, and my dll vtable was two entries off what it should
have been. This and a stupid cdecl vs. stdcal problem have led me to blame
everything on the damn definitions! I could be completely in left field,
however.
Thank you for the input, though.
-john
"John Bandhauer" <[EMAIL PROTECTED]> wrote in message
[EMAIL PROTECTED]">news:[EMAIL PROTECTED]...
> John Nason wrote:
> >
> > Hello,
> > I'm having a tough problem, windows related... I can do a createInstance
on
> > my own component when I use my debug version of Mozilla(.93). It is
called
> > from a javascript that is registered in the chrome. When I use my
Release
> > version or use Netscape 6.1, my dll does not even get loaded(the script
does
> > get executed). There seems to be a difference somewhere with a XPCOM
> > preprocessor definition or something. I link and include against
> > win32_o.obj. When I build the release version of my dll(with
win32_o.obj) I
> > can still load my dll with the debug version of Mozilla, but not
release. It
> > has to be related to createInstance... I am listed in components.reg and
so
> > on so it is not a lookup problem. I think there is a match up problem
> > between my dll and the release Mozilla, like we built differently or
> > something.
> > Thanks for your help,
> > -john
>
> Two registration-like things have to happen before a component
> can be instantiated from JS... The dll needs to have been
> autoregistered and the .xpt file also needs to have been
> autoregistered. For debug builds the application will scan for
> new dll and xpt files in the components directory on each
> startup. For Release builds this is not the case. You need to
> force this by: running regxpcom or deleting component.reg and
> xpti.dat before startup. Both these autoreg activities can also
> be triggered programatically at runtime via a method on the
> component manager object or (in newer builds) by calling
> navigator.plugins.refresh().
>
> Are you sure your component got correctly registered in your
> *release* component.reg? You can easily check for your xpt file
> in xpti.dat since this is a human readable file (but do yourself
> a favor... don't edit that file). You sound like you are sure
> that registration issues are not the problem. But these really
> are the mostly likely causes of what you describe.
>
> John.



Reply via email to