come posso verificare da codice se la finestra di un applicazione ESTERNA alla mia è visibile sulla schermo, anche se al momento non attiva?

trovare l' hwnd della applicazione esterna non è un problema, ma poi?

Non posso servirmi di GetForegroundWindow , perche non verifica se è visibile, ma se è quella su cui si lavora

Dal nome mi sembrava adatto IsWindowVisible ... ma questa Api non controlla se la finestra è visibile, ma se l' equivalente di
System.Windows.Forms.Form.Visible
è settato su Visible, che nulla ha a che fare se effettivamente è visibile sullo schermo

qualche consiglio?