A new release of the AccEx library is now available. This is a library of functions and classes for C++ based Open AIM clients and plugins using the AIM SDK.
This release adds three new classes.
AccEx::CAccExPluginPreferences
This class wraps an AccEx::CAccExPreferences object to help you manage the reserved name space for preferences in a plugin. Open AIM Plugins can keep any number of preferences under the “aimcc.plugin.__GUID__.prefs.__PREF__” key specifier where __GUID__ is your plugin key and __PREF__ is any alphanumeric name for your preference.
The class is initialized with a pointer to the session and the plugin’s CLSID. It builds the base preference specifier for the plugin and gives you easy access to the preferences under it. The class also has methods to let you test if a given specifier is in the plugin’s name space and is of a particular preference. The GetPref() and SetPref() methods are identical to that of AccEx::CAccExPreferences with the only exception that you use the __PREF__ suffix rather than the full specifier.
AccEx::CAccExDAccEventSink
This class helps you implement your own DAccEvents handler. It differs from a the CAccEventSink supplied by the Open AIM SDK in a number of ways.
- Supports ATL
- Adds an OnPreEventMapFilter() function that you can use to filter out events
- Adds an OnUnknownDispId() function that you can use to catch unhandled events
- Wraps all calls to your handler functions in an exception handler
- Adds an OnException() function that is called when an exception occurs
- Event handlers are not virtual functions
- Does not implement the IAccSession manager (See: AccEx::CAccExIAccSessionArray)
AccEx::CAccExIAccSessionArray
This class helps you keep track of up to 10 IAccSession objects. The purpose of this class is to encapsulate the management of these interfaces in an array along with their connection point cookie. You can add, remove, and find sessions. There are handy methods to get the first session, also known as the primary session, check if the array is empty, and check if a session is already registered.
You can download the latest release and get more information at the AccEx page.
