MAXScript plug-ins do not generally use ClassDesc so their .cpp and .def files are simpler, because they do not export the functions GetClassDesc() and GetNumClasses(). A MAXScript plug-in DLL should have the file-extension .dlx.
The following is a typical MAXScript plug-in .def file:
LIBRARY PluginName EXPORTS LibDescription @1 LibInit @ 2 LibVersion @3 SECTIONS .data READ WRITE
The following is a typical MAXScript plug-in .cpp file:
#include "maxscrpt.h" HINSTANCE hInstance; // ======================================================== // Grab onto this DLL's instance handle BOOL WINAPIDllMain(HINSTANCEDLLhinst, DWORDfdwReason, LPVOIDlpvReserved) { switch (fdwReason) { case DLL_PROCESS_ATTACH: hInstance = DLLhinst; break; } return TRUE; } __declspec (dllexport) voidLibInit() { // TODO: Put any code for initializing your plug-in here. MessageBox(NULL, _T("My MAXScript plug-in is loaded!!"), _T("Testing!"), MB_OK); } __declspec (dllexport) constTCHAR* LibDescription() { // TODO: Put code in here telling what your plug-in does. return_T("My MAXScript plug-in"); } __declspec (dllexport) ULONGLibVersion() { // Return the version of the Max SDK return VERSION_3DSMAX; }