About the author
I haven't been working on CCWSpy.NET for a long while, as I've been busy. In fact, looking at my last blog entry on the application, I've discovered that it's been 2 years since I first wrote it in Delphi and blogged about it. What's CCWSpy.NET? Here's my original introduction.
To recap, it's a hybrid Win32 and .NET 1.1 application, which can spy on any events happening in a control located in another native .NET 1.0 and 1.1 application. As of now, it cannot spy on applications written in VCL.NET, since controls in a VCL.NET application do not directly descend from the System.Windows.Forms.Control class.
Today, I added another ability to CCWSpy.NET. CCWSpy.NET can now change the property of any control it is spying on. There is a menu item in the application, that says Set Value. Once I clicked on it, I need to provide the window id of a control that will be updated.
In the click event, I attempted to set the value of the control directly. This resulted in an abysmal failure of the application, the end result of which is a hang.
To be continued...
Continued discussion of undocumented Delphi 8 Property Access Specifiers, and other ways of adding and removing delegates / events handlers, including clearing the list of all the delegates / event handlers.
This article discusses the new Delphi 8 property access specifiers.
A method pointer is now the same as a global procedure, ie, procedure of object = procedure.