I have an application A, which has a little text box, surrounded by a frame, which indicates whether the system is ready or not. The text and the frame reside inside a Delphi TSemaphor
control.
- During initialization, the frame is yellow.
- When the initialization has completed and the system is ready, the frame turns green.
In another application B, I need to detect when application A has been initialized and is ready.
How can I do this (detect change of color of the frame) in application A with least possible effort and under following constraints
- application A cannot be changed (I don't have its source code),
- application A has no automation interface,
- the only change that occurs, when the application A becomes ready, is the color change
?
There are following approaches to solving this problem I'm aware of:
- Use image recognition (http://sikuli.org/)
- Find out the color of the pixel at the respective position.
- Use an injected DLL to get access to TSemaphore attributes.