Похоже, вы пытаетесь автоматизировать приложение, когда оно запускается под профилировщиком. Цель состоит в том, чтобы автоматизировать определенный набор действий, которые вы заинтересованы в профилировании. Если так ...
Я не знаю, как определить, запущен ли процесс под профилировщиком. Любое такое обнаружение, скорее всего, будет нестабильным.
Более надежный способ сделать это - просто добавить в приложение параметр, который инструктирует его автоматизировать сценарий. Затем просто передайте этот параметр приложению при запуске под профилировщиком (большинство из них позволяют передавать параметры процессу). Это значительно упростит сценарий.
Еще лучшим решением было бы написать вторую программу, единственной целью которой является управление приложением. Это удаляет только тестовый код из вашего производственного приложения.