I don't think you can go wrong moving more of DQSD into C++. The only real
downside that I see is it limiting the number of developers that might be
willing of have the experienced to work on it, but since a significant
portion is C++ now, I don't think that should even be a concern. Honestly,
I'd love to see everything except configurable aspects (searches, etc) of
the tool moved into C++.
> Hi guys,
> I've spent a little time investigating the Vista "blank window" issues
> that have been raised on the users list, and come up with a couple of
> There are two things you can launch from DQSD, a) searches and b) URLs
> (and a couple of other things, but let's leave it at that).
> Then there's a setting that affects how these launches are performed
> -- the launchmode, which can be 0) Use IE or 1) Use default browser.
> So there's essentially a behavior matrix for what happens in the
> respective cases-
> a form.submit Write out .html
> file to submit form in body onload + ShellExecute(file)
> b window.open + window.navigate ShellExecute(URL)
> Most of these methods have one issue or another with IE's new
> Protected Mode, because DQSD runs in un-PM, but launches searches and
> URLs that require PM, so there tends to be a lot of intermediary
> windows launched that bridge between the two modes.
> As if this wasn't complicated enough to follow, all cases with
> launchmode 0 happen in script, and all cases with launchmode 1 happen
> inside DQSDTools.Launcher.
> I'm wondering whether there would be value in moving all this logic
> into DQSDTools, and moving the actual logic to a simple class
> hierarchy of Launchers. Something like-
> class Launcher
> virtual void SubmitForm(IHTMLFormElement* pForm, VARIANT options);
> virtual void LaunchUrl(BSTR url, VARIANT options);
> and then with implementations for the respective launch modes, say,
> IELauncher and DefaultBrowserLauncher.
> The primary benefit of having the complete logic in C++ code, is that
> we can (hopefully) use new Vista APIs to safely bridge between
> un-protected and protected mode.
> What's also cool about this is that we can easily select
> implementation based on launchmode, and adding a launchmode is as
> simple as adding a new implementation...
> ...which leads me to another thing: we should probably add a new
> launchmode called Explicit, which comes with an explicit browser path.
> That way, users can launch their searches with a specific browser.
> This should please the x64 crowd, who want to use the 32-bit Internet
> Explorer even if DQSD runs in the 64-bit version of the browser.
> So... Anyone opposed to moving form submittal/URL launching entirely
> into DQSDTools? What are the drawbacks I don't see?
> - Kim
> Check out the new SourceForge.net Marketplace.
> It is the best place to buy or sell services for
> just about anything Open Source.
> http://p.sf.net/sfu/Xq1LFB > _______________________________________________
> Archive: https://lists.sourceforge.net/lists/listinfo/dqsd-devel >