Archive: Installer freezes after SHNotifyChange


Installer freezes after SHNotifyChange
Hello all,

My first post to the forum :) I've done a search about this and came up with not too much information or similar problems..

I've been having some problems with (it seems) SHNotifyChange locking the installer on some systems. The installer will successfully install all required files, shortcuts and file associations, until shell refresh where the installer's user interface locks up or spins waiting.

I am unable to reproduce it on mine, so I am unable to confirm my suspects, however we've had many people report it. (see attached screen shot)

The code I'm interested in is :

<snip>

;Call RefreshShellIcons
!define SHCNE_ASSOCCHANGED 0x08000000
!define SHCNF_IDLIST 0

Function RefreshShellIcons
; By jerome tremblay - april 2003
System::Call 'shell32.dll::SHChangeNotify(i, i, i, i) v \
(${SHCNE_ASSOCCHANGED}, ${SHCNF_IDLIST}, 0, 0)'
FunctionEnd

;Refresh the shell icons after changing file associations
Call RefreshShellIcons

;Force Desktop Refresh
; magic numbers :
; 65535 = HWND_BROADCAST
; 26 = WM_SETTINGCHANGE
SendMessage 65535 26 0 0
</snip>

Has anyone had similar problems ?
Are there any known issues with shell notification ?

Would love to hear any feedback/suggestions.

Thanks!


try using 0x2000 (SHCNF_FLUSHNOWAIT) as the flags for SHChangeNotify