0

I'd like to create application to combine measurements from two car systems and plot it.
One is external lambda sensor, second is aftermarket ECU for propane-butane conversion.
One could deliver AFR information, second RPM and engine load.

Unfortunately those app don't provide any api. Apps have simple GUI, I thought that maybe extracting data from it could be solution. Is there any easy and reliable method to extract numbers/texts from other application? I'd like to use C++ or C# on Windows.

Khorh
  • 1
  • 1
    Maybe you can grab the Window image, and process it using OCR on your Application. – Tony Jun 28 '18 at 16:07
  • If there is no published API to get that data, then anything you come up with will be a hack that is going to break every single time the creators of those applications change as much as a comma in their apps. Better talk to the vendors and agree on a stable API you can use. – Jesper Juhl Jun 28 '18 at 19:13

1 Answers1

0

One option is to retrieve the values directly from memory. Get the window handle of the application, and traverse its child windows until you find the windows (fields) which contain the information you're looking for. From what I read, the difficult part is finding the class names of the forms you're interested in. You can write this logic yourself using FindWindow and SendMessage, or use Managed Windows API.

More information:

How to find a child of a parent unmanaged win32 app

How to read another windows from a different program

How to find a child of a parent unmanaged win32 app

LolPython
  • 168
  • 1
  • 11