5

I just came back to C++ Builder after 5 or more years away. I seem to remember a nice tool where I could drag its pointer over the GUI of my running application and get lots of info about what was pointed at - handle, size, text, parent, children, etc

IIRC, if the exe include debug info I could also get the actual variable name as used in the source.

Does anyone know what program I am talking about? Thanks

Mawg says reinstate Monica
  • 38,334
  • 103
  • 306
  • 551

3 Answers3

11

There are several options:

Winspector

This is the program I've used the most of these Spy++ like programs, it has all the features I needed and worked without complaints on my developer machine, it has been quite some time since I've used it though. And the official site seems to be down for some reason ( http://www.windows-spy.com/ ) but luckily you can get a version from softpedia: http://www.softpedia.com/get/Security/Security-Related/Winspector.shtml

Winspector screenshot

WinSpy

I have used this program for debugging, and finding out which messages was sent to different windows, it worked quite well, and was a good alternative to Spy++, besides it is free. You can download it from here: http://www.catch22.net/software/winspy

WinSpy++ Screenshot

SpyStudio by Nektra

I have never tried this program but it actuall seems to do what you asks, and it is free. It can be found here: http://www.nektra.com/products/spystudio-api-monitor/

Spystudo Screenshot
(source: nektra.com)

WinID

From what I've heard WinID should be able to perform much of the same, but I have never tried the program myself. You can download it from here: http://www.dennisbabkin.com/php/download.php?what=WinID this program is not compatible with Windows Vista though (and probably not Windows 7 either).

The challenging option

If there is a bit of a pioneer in you, you might want to create your own utility, although this is most likely not what you want, but if so you can check out these codeproject pages:

These are all a lot like the Spy++ program that came with Visual Studio. Last but not least you might find other programs in this thread: I want Spy++ but I don't have Visual Studio

Glorfindel
  • 21,988
  • 13
  • 81
  • 109
Tommy Andersen
  • 7,165
  • 1
  • 31
  • 50
  • Tommy, that is most comprehensive answer I have ever received to a question on this site. I just wish there was some way I could award you more than one up vote and the answer. Thanks!! – Mawg says reinstate Monica Mar 12 '10 at 02:59
  • winspector seemed to bring my machine to a halt [?] – rogerdpack Apr 10 '12 at 19:38
  • @rogerdpack I've just tested the version of winspector I've linked in my post. And it seems to run fine, I'm sorry to hear if this 2 year old version did not run acceptedly on your computer, but that is really no reason to down vote the post. – Tommy Andersen Apr 10 '12 at 19:51
  • Winspector seems to crash for me when run a second time, and "freeze" the computer for a few seconds the first time I run it. http://twitpic.com/98jp1z since you seem to mention it first, meaning the "best" option, and this misled me, I felt obliged to do my duty and upvote a better answer/downvote yours. Perhaps you could edit your response to list actively maintained projects first? – rogerdpack Apr 11 '12 at 16:04
  • @rogerdpack Please note that the answer is 2 years old. I have tried running it a second time without problems here. But fair enough if you feel it requires a downvote so be it. – Tommy Andersen Apr 11 '12 at 18:11
3

A very decent effort to revive the beloved but defunct winspector is window detective : http://windowdetective.sourceforge.net/

Mr_and_Mrs_D
  • 32,208
  • 39
  • 178
  • 361
0

What you describe in the question sounds like TestComplete. http://www.automatedqa.com/products/testcomplete

If you compile the application as an "open application"(you add a few .pas from TestComplete to the project) then it will use the debug information and you will be able to see private data members of the classes and their value.

Johan
  • 1