Тема: не могу выгрузить программно dbx

ХЕЛП.
Хочу чтобы используемый dbx выгружался вместе с arx-ом, но не получается никак.
Пытаюсь делать так:

char *PathDBX;
    virtual AcRx::AppRetCode On_kInitAppMsg (void *pkt)
    {
        AcRx::AppRetCode retCode =AcRxArxApp::On_kInitAppMsg (pkt) ;
    char ModuleName[_MAX_PATH+1];
    GetModuleFileName(_hdllInstance,ModuleName,_MAX_PATH);
    PathDBX = new char[2*_MAX_PATH+1]; memset(PathDBX,'\0',2*_MAX_PATH+1);
    char *send = 0;
    if ((send = strrchr(ModuleName,'\\')) != NULL) {
      strncpy(PathDBX,ModuleName,send-ModuleName+1);
      strcat(PathDBX,"my.dbx");
    } else if ((send = strrchr(ModuleName,'/')) != NULL) {
      strncpy(PathDBX,ModuleName,send-ModuleName+1);
      strcat(PathDBX,"my.dbx");
    } else {
      strcpy(PathDBX,"my.dbx");
    }
    if (!acrxLoadModule(PathDBX, true,true))
          return AcRx::kRetError;
        return (retCode) ;
    }
    virtual AcRx::AppRetCode On_kUnloadAppMsg (void *pkt) {
        AcRx::AppRetCode retCode =AcRxArxApp::On_kUnloadAppMsg (pkt) ;
        // TODO: Add your code here
        acrxUnloadModule(PathDBX,true);
        delete []PathDBX;
        return (retCode) ;
    }

так вот в результате dbx в автокаде (среди подгруженных приложений) исчезает, а созданные им объекты становятся прокси. НО! сам файл DBX остается открытым и к нему нет доступа, спасает только закрытие автокада. что я делаю не так?
ps: в load unload манипуляция с true-false не помогла.
pps: да, если объектов не создавать, только загрузить и сразу выгрузить, то все норм.
если создать объект, удалить и потом выгрузить - тоже не работает.

Re: не могу выгрузить программно dbx

Лучше и не пытайся. В лучшем случае развалишь AutoCAD.