Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>First, the easy answer: I think what you're trying to do has been done, sort of. <a href="http://www.enable-pb.com/Objects/Pagina.asp?ID=77" rel="noreferrer">Rex from Enable</a> does what I think you're after, but IIRC from talking with the developers, it depends on code hooks built into the application. </p> <p>Which leads to the suggestion that I don't think you'll be able to do what I think you're trying to do completely externally from the application. You can grab window handles with WinAPIs and do some basic things with that, but not as much as you want. And getting information about DataWindows with WinAPIs? Forget it. </p> <p>I <em>believe</em> I've heard of an API like the one you're asking about, but I've never heard of anyone other that automated testing software tool manufacturers getting their hands on it. If this is true (and the quality of this information is along the lines of "heard it in the hallway"), I suspect there might be some application security issues in letting this get out. (I know <em>you'd</em> never want to infect my application, or poke around and find out my secrets. <em>grin</em>)</p> <p>Even with hooks into the PowerBuilder VM memory space, I'm not aware of being able to get a list of objects in memory without some PowerScript framework hooks (e.g. populating a list on every open and constructor with object handles). Once you've got a window handle, you can easily traverse its control arrays (and its subclasses control arrays) to get a list of objects on the window, but things like handles to NVO instance variables would be problematic. </p> <p>I admire the idea. I wish I had better news (other than maybe Rex might solve your problem without the headaches of doing it yourself). Now I'm looking forward even more to what eran may release! <em>grin</em></p> <p>Good luck,</p> <p>Terry.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload