I had some trouble with that function not accepting 48x icons. However I did find a somewhat kludgly solution. (Not really bad for my app though as the launcher I describe below has the added benefit of launching the appropriate version for 32/64 bit systems.)
First I used the built-in GUISetIcon() to change the main window icon. This seemed to work fine until I used a shortcut to launch the exe. To remedy this I created a very small and simple launcher using FreeBasic. FreeBasic has the advantage of creating ultra small exes in situations like this. Now when the program is started using the launcher the icon on the Window 7 TaskBar changes as expected.
ChDir(".\bin")
If Environ ("PROCESSOR_ARCHITEW6432")="AMD64" Then
Run("mtcrypt64.exe")
Else
Run("mtcrypt32.exe")
EndIf
As a side note FreeBasic is great companion for creating small things like this as you dont need another ~800kb uncompressed exe to bring along with your AutoIt executable(s). The learning curve was virtually non-existent and the docs on their wiki are excellent. It even creates dlls that can be used with dllcall.
FreeBasic HomePage
Edited by FuryCell, 18 February 2011 - 06:16 PM.