Ooof - now that I went and shot my mouth off, I've earned myself a
bunch of looking. Seems I am missing '99 where it counts. While I'm
doing that (it might take a while, I might just have to hack it again)
I've at least recalled the architecture.
A small C++ DLL was used to invoke IE as an active-x control, but did
so in an offscreen window. This was then wrapped by a java interface
lib built from the type library (i have that but fat lot of good it
does) and then our 3D browser used that to get images.
Hmmm, maybe I misspoke in the first place, I did just say IE active X
control, not .exe. Hmmm, my apologies.
So, a little research
1) ::CreateProcess doesn't seem on casual inspection to offer the
parameters you need to do this
2) Windows can't tell the difference between a memory dc and a real
screen window, but if it's a 3D view, glacially slow would be the
order of the day (no hardware accelleration). Actually, for that
matter, I think you loose all 2D hardware accelleration too.
The link
http://www.experts-exchange.com/Programming/Programming_Languages/Cplusplus/Q_20585994.html
might be of some use, it's a discussion by people trying to hook
CreateWindow and prevent the
javascript alert popup. (hmmm, do I smell an exploit ?). The PlanetCpp
post on that page gives code to show how to hook notepad, tho some
comments indicate it has a few problems.
My guess is that IFF you have sufficient permissions on the machine,
you _may_ be able to intercept the apps createwindow call. If so, you
need to create an offscreen window and give that to the app. Across
processes, this could be a serious pita, and you may need to research
it extensively. If it is possible, you'll also need to assume msft
may move to prevent it in the future. It has the potential to open a
nasty can of worms.
So, sorry for my poor recollection, I was actually thinking of running
activex components offscreen. Now if your target app happens to
provide an activex interface, then you should be all set
I'll keep rooting about off and on, it's an interesting question.
regards
mmm