[racket] COM and MysterX
As of recent nightly builds, Racket provides improved support for COM
on Windows, but ActiveX support has been removed due to a lack demand.
The main new libraries are `ffi/com' and `ffi/unsafe/com'. The old
MysterX implementation has been removed, and `mysterx' is now a thin
wrapper on `ffi/com'. Among the old MysterX DLLs, only "myssink.dll" is
still used (for COM event support), and it no longer needs to be
registered.
If you use MysterX:
* Please try the nightly build,
http://pre.racket-lang.org/installers
and let me know whether the new implementation works for you.
* Consider porting from `mysterx' to `ffi/com'. The new API is a
little cleaner, and it encourages you to work with ProgIDs or CLSIDs
instead of "coclasses".
For new COM projects:
* Use `ffi/com' for COM automation instead of `mysterx'.
* For COM objects that don't support COM automation, the
`ffi/unsafe/com' library provides a `define-com-interface' form to
help you work with interfaces directly. The documentation shows an
extended example using `ICatInformation'.