вы можете использовать eval to,
new RegExp( eval("/"+str+"/i") );
bye ...
У меня была та же проблема и SwitchToThisWindow () работавший лучшее для меня. Единственное ограничение - то, что необходимо было установить XP sp1. Я играл с SetForegroundWindow, ShowWindow, и у них обоих были проблемы при получении по запросу окна в представление.
Я полагаю, что Вы захотите использовать пример SetForegroundWindow
Полное Примечание Стороны...
можно использовать
Process.GetProcessesByName(me.ProcessName)
вместо цикличного выполнения по всем процессам, работающим на системе...
ОБНОВЛЕНИЕ
Правила PInvoke для этого вида вещи...
Можно ли захватить свойство MainWindowHandle объекта Процесса и отправить ли ему сообщение WM_USER, что можно интерпретировать, поскольку "некоторый другой экземпляр хочет выявить меня".