October 2009
Tuesday, 20. October 2009
ASP.Net LoadXml Doesn't Cache DTDs10/20/2009 03:32 PM Seems like a bad oversight on MS' part. Why would you want to read the DTD each time XmlDocument.LoadXml() is called? :-P
Someone was nice enough to write a caching XML resolver so you can save your bandwidth if you use LoadXml to parse files off a web site on nablesoft.
(0) Monday, 12. October 2009
Notes 8.5.1 includes Designer at no charge!10/12/2009 05:08 PM In the early days of Notes, all the Notes clients included the "Designer" app that let power users create their own apps so most users could see how useful Notes was instead of having to wait for approval to get a corporate programmer to spend time creating something. This way, they could prototype something they knew best about and the official developers could make it act like standard apps afterwards. XPages is now more complete and very usable for applications that are more web-centric. Check the Lotus site for more details. (0) Saturday, 10. October 2009
DEP/NX Breaks Older C++ ActiveX Controls in .Net 3.5 Apps (including Web Apps)10/10/2009 Thought I'd write this up in case it saves someone else a few days of debugging in Windows 2008 Server. The cryptic error message you'll get in your Windows Forms or ASP.Net apps is "Unable to get the window handle for the 'AxBlahBlah' control. Windowless ActiveX controls are not supported." If you look at the stack trace a bit more, you'll find an Access Violation (thanks to Tom Frey for that hint). The reason for this is that some older C++ ActiveX controls that linked to MS' very own ATL libraries are not NX/DEP safe (i.e., they run code inside data segments!); ATL versions 7.1 and earlier (basically anything before Visual Studio 2005) do this funky stunt. So, your choice is to run your app w/ DEP disabled or if you're lucky, you can recompile those ancient ActiveX controls which is another PITA in itself because you have to get it to compile in a later version of Visual Studio and these controls inevitably have C++ quirks.
Windows 2008 is also missing linkinfo.dll by default, so if your ActiveX control uses wininet.dll, it can't be registered until you install the Desktop Experience feature (which includes Windows Media Player, etc.) in Win2008. Why oh why? :-P At least you can uninstall that feature afterwards; the linkinfo.dll seems to stay around.
(0)