> When I call FindWindow("SciCalc", null) I always get the same handle back.
> How can I enumerate through the (open) calculator forms?
> I dont want to use EnumWindows and check for the handles (bit overdone I
> think)
>
> More looking for a FindWindowNext or so ;)
There are two functions that approximate that: GetWindow() with GW_HWNDNEXT
and FindWindowEx() with the child window handle set to a previously found
window.
However, neither should be used for this, you really do want to use
EnumWindows() (in combination with GetClassName()). The MSDN mentions why
this is so: if anything changes in window ordering or existence while you're
enumerating windows "manually", you're in trouble. EnumWindows() doesn't
have these problems -- this is exactly why we have EnumWindows().
The MSDN contains a useful sample for EnumWindows() under callbacks:
http://msdn2.microsoft.com/en-us/library/843s5s5x.aspx

Signature
J.
Pipo - 11 Mar 2008 22:06 GMT
Great help Jeroen, thank you
>> When I call FindWindow("SciCalc", null) I always get the same handle
>> back.
[quoted text clipped - 16 lines]
> The MSDN contains a useful sample for EnumWindows() under callbacks:
> http://msdn2.microsoft.com/en-us/library/843s5s5x.aspx