| Andreas Mertens 2004-04-22, 1:33 pm |
| I just wanted to give a heads up to anyone developing with VS.Net and then
having problems deploying, in particular to Windows Server 2003 Web Edition.
I had just completed a system that I needed to deploy over the net for a
demonstration. The system all worked fine on my development machines. One
part involved creating an interop component for ShDocVw.dll to internally
manipulate an instance of Internet Explorer (6SP1).
As I said, it all worked fine in dev, but on our staging servers I was
getting the following exception:
"QueryInterface for interface interop.ShDocVw.IWebBrowser2 failed."
....
Exception Details: System.InvalidCastException: QueryInterface for interface
interop.ShDocVw.IWebBrowser2 failed.
...."
After a long night digging into this, I found that the IWebBrowser2
interface is not defined on WS2003 Web Edition (no entry for it in the
registry). This makes sense, as WS2003 Web Edition is supposed to be
limited in functionalities. So for anyone else looking to deploy something
similar (and it could be other things other than ShDocVw.dll), be aware of
the issues.
A suggestion to Microsoft: The tools are great, but it would nice if there
was some sort of switch that could flag these issues depending on the
platform you are deploying to. Even a utility that could parse the IDL
after compile time and generate a report on this would be useful (anyone
want to take that on?).
Thanks,
Andreas Mertens
andreasm@nvisionideas.com
|