Nein, eben nicht zwingend. Das genau ist nämlich der Fehler in deinem Code
Aber den Klassennamen kannst du dir ja in deiner EnumWindowsProc auch einfach mittels GetClassName() ermitteln.
Edit: Mit dem IE Fenster scheint es (bie mir grade) allerdings auch mit nil als Klassennamen zu funktionieren. Darauf würde ich aber nicht umbedingt vertrauen, sondern besser den Klassennamen auch noch übergeben.