Archive: DirectX setup works but doesn't show dialog with progress in XP (in win 2K all is OK)


DirectX setup works but doesn't show dialog with progress in XP (in win 2K all is OK)
I am using in my installer a call to DirectXSetup in DSETUP.dll to install DirectX if it is necessary. All works fine in win 2k and a dilog window with progress bar for DirectX files is shown, but in win XP dialog window does not appear. Nevertheless DirectX setup takes place.

This is the call I have

System::Call 'DSetup::DirectXSetup(i, t, i) i \
($HWNDPARENT, "$WINDIR\temp\DX2005Redist", ${DSETUP_DIRECTX}) .r0'
StrCmp $0 ${DSETUPERR_SUCCESS} done
StrCmp $0 ${DSETUPERR_SUCCESS_RESTART} 0 error
...


Any suggestion?

Doesn't DirectX 9 come preloaded with Windows XP? If it's already installed, no installation should take place and so no dialog should appear.


Thanks for replying. I was waiting for any reply desperatly.

I need to detect if last version of DirectX is installed (June 2005 Edition). The problem is that in Win2k I get the microsoft progress dialog during DirectX setup when I make the call:

System::Call 'DSetup::DirectXSetupA(i, t, i) i \
$HWNDPARENT, "$WINDIR\temp\DX2005Redist", ${DSETUP_DIRECTX}) .r0'

In WinXP the setup takes places but no dialog appears.

I have chequed HWNDPARENT and it is 0 because before I make the call I destroy a banner I have. But anyway this must not be the reason because in this case the microsoft dialog must take as parent the desktop windows.

I can't understand the reason why installer behaves different in Win XP