We run our application in a kiosk environment of sorts, replacing Explorer with our application. Everything worked fine under Windows XP, but with Windows 7 we can't get it to work.
We set the registry key WinLogon
to a custom user.bat
batch script (no further registry tweaking) in which we wait for several services to start (SQLServer, for example), then launch our application.
This worked great in XP. However, in 7, all needed services are detected, but when our application starts, it fails when trying to load its .fx
file. It's as if some service or component related to DirectX has not been yet initialized. Any hints on troubleshooting this?
We solved this by making our program which waits for services try to play an avi (without displaying it) using DirectX. We cover that code with a try-catch block inside a loop and insist on it until it succeeds, which means DirectX is available. A nasty hack, but since the user can't see it, it's good enough for us.