D
Damon Gautama
Hello,
I sent a note a while back about giving the system time to initialize before
trying to do some work. Slobodan suggested using
CMP_WaitNoPendingInstallEvents. We added this, and the system does wait for
a while. One of the first things we do is open and display a bitmap. This
bitmap handle comes up bad. The scenarios we've tried are:
1) Explorer is the shell and launches our app. No problems.
2) Our app is the shell. Calls CMP_WaitNoPendingInstallEvents, then sleeps
for 20 seconds. No problems
3) Our app is the shell. Calls CMP_WaitNoPendingInstallEvents. Bitmap handle
is bad.
We don't want to launch explorer, so #2 above is currently the best
approach. I would like to find something more elegant than sleep, though. Is
there something akin to WaitUntilSystemIsFullyUp? The other option is to
loop on reading the bitmap, and keep trying until the handle is good or
until we time out. If we wait for the good handle, is there still a
possibility that parts of the system are still not up, and we could face
problems down the line? These timing things give me the willies, as it is
often the client that finds the bugs first.
Thanks!
damon
I sent a note a while back about giving the system time to initialize before
trying to do some work. Slobodan suggested using
CMP_WaitNoPendingInstallEvents. We added this, and the system does wait for
a while. One of the first things we do is open and display a bitmap. This
bitmap handle comes up bad. The scenarios we've tried are:
1) Explorer is the shell and launches our app. No problems.
2) Our app is the shell. Calls CMP_WaitNoPendingInstallEvents, then sleeps
for 20 seconds. No problems
3) Our app is the shell. Calls CMP_WaitNoPendingInstallEvents. Bitmap handle
is bad.
We don't want to launch explorer, so #2 above is currently the best
approach. I would like to find something more elegant than sleep, though. Is
there something akin to WaitUntilSystemIsFullyUp? The other option is to
loop on reading the bitmap, and keep trying until the handle is good or
until we time out. If we wait for the good handle, is there still a
possibility that parts of the system are still not up, and we could face
problems down the line? These timing things give me the willies, as it is
often the client that finds the bugs first.
Thanks!
damon