Существует библиотека, которая поддерживает нумерацию и поиск дескрипторов окон, которая доступна в http://mwinapi.sourceforge.net/
Только для того, чтобы вам не приходилось каждый раз изобретать велосипед;)
Начните с
SystemWindow.AllToplevelWindows
, а затем просто копайте свой путь вниз (просматривая имена классов, имена процессов, заголовки, идентификаторы диалогов и т. Д.).