in reply to
Can't change icon with win32 module
Tried SetIcon? I couldn't easily find anything that allows you to create a Win32::GUI object around a HWND. You might have to look in the source of Win32::GUI and figure out what a Window object is and how to fake one for SetIcon and ChangeIcon.
edit: per https://github.com/gitpan/Win32-GUI/blob/master/GUI.xs#L1788 and http://msdn.microsoft.com/en-us/library/windows/desktop/ms633588%28v=vs.85%29.aspx considered checking the return value of ->ChangeIcon() and then checking GetLastError? per https://github.com/gitpan/Win32-GUI/blob/master/TYPEMAP HWND and HICON objects are either a hash ref with a "-handle" slice with a integer in that slice, or just an integer like 123. ChangeIcon isnt really method either, its a sub. You should use it as a sub not a method. Although method will maybe sometimes work. Win32::GUI's docs do a poor job of explaining the return values of anything and method vs sub call syntax.