miketsoft подсказал (без изменений в SDK):
//---------------------------------------------------------------------------
#include <vcl.h>
#include <windows.h>
#pragma hdrstop
#include "aimp2_sdk.h"
//---------------------------------------------------------------------------
class TMyPlug: public TInterfacedObject, public IAIMPAddonHeader
{
private:
IAIMP2Controller *ctrl;
public:
HRESULT __stdcall QueryInterface(const GUID& IID, void **Obj)
{ return TInterfacedObject::QueryInterface(IID, (void *)Obj); }
ULONG __stdcall AddRef()
{ return TInterfacedObject::_AddRef(); }
ULONG __stdcall Release()
{ return TInterfacedObject::_Release(); }
BOOL __stdcall GetHasSettingsDialog() { return false; }
PWCHAR __stdcall GetPluginAuthor() { return L"MikeTSoft"; }
PWCHAR __stdcall GetPluginName() { return L"Cool MikeTSoft Plugin"; }
void __stdcall Finalize() {}
void __stdcall Initialize(IAIMP2Controller *AController) { ctrl=AController; }
void __stdcall ShowSettingsDialog(HWND AParentWindow) {}
};
//---------------------------------------------------------------------------
extern "C" __declspec(dllexport) BOOL __stdcall AIMP_QueryAddonEx(IAIMPAddonHeader *&AHeader)
{
AHeader=dynamic_cast<IAIMPAddonHeader *>(new TMyPlug());
return TRUE;
}
//---------------------------------------------------------------------------
#pragma argsused
int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void* lpReserved)
{
return 1;
}
//---------------------------------------------------------------------------