SDS/ADS application

We have a need to develop a simple SDS/ADS application (it must run on Bricscad Classic), but whatever we try, we always get this error when trying to load it into Bricscad:

Error Message: Could not load file or assembly 'file:///D:\CPP projekti\settingsin\debug\SettingsIn.dll' or one of its dependencies. The module was expected to contain an assembly manifest."D:/CPP projekti/settingsin/debug/SettingsIn.dll"

Does anybody have an idea what is going on?

We created new project in Visual Studio 2005, and defined it as MFC extension DLL.

Regards,
Ranko

Comments

  • This is just a guess, but are you using "Netload" instead of "appload" to load the application?
  • We are using APPLOAD:

    : _appload
    Loading D:\CPP projekti\SettIn\debug\SettIn.dll
    : (arxload "D:/CPP projekti/SettIn/debug/SettIn.dll")
    Loading .NET runtime v2.0.50727:

    Error Message: Could not load file or assembly 'file:///D:\CPP projekti\SettIn\debug\SettIn.dll' or one of its dependencies. The module was expected to contain an assembly manifest."D:/CPP projekti/SettIn/debug/SettIn.dll"

    We have also tried to start from Visual Studio Win32 DLL Wizard, but the same thing happens.

    Regards,
    Ranko
  • Try renaming the file to .DRX, or .TX
  • Thanks, Daniel, it helped, now this message is gone, but dll still can't be loaded. We have exported SDS_EntryPoint, but still no success.

    Best regards,
    Ranko
  • Ah, I'm pretty sure that approach is depreciated, you will need migrate your SDS module to .TX, previously called DRX. You will see some additional headers in your install folder /API/SDS that provide access to the host application. You can still use most all the SDS methods except maybe a few reactors,  as well as the arsenal of goodies that come with .TX.  What is most certainly depreciated is the loading mechanism, which now looks more like

     

    Class MyApp : public OdRxModule

    {

    protected:

      MyApp (){

    }

      void initApp(){

      }

      void uninitApp(){

      }

    public:

      ~ MyApp (){

    }

    };

    ODRX_DEFINE_DYNAMIC_MODULE(MyApp);

     

    You will need the TX_SDK_3.05 SDK available at  http://www.opendesign.com/download/index.php.

    You can find a few DRX sample applications over at TheSwamp.Org  to get you started

    Cheers : )

  • Dear Daniel,

    Thank you very much! I found the sample on your site and now everything is clear :)


    Regards,
    Ranko
  • Interesting - if I include "windows.h", Bricscad can not load this app, so how to access registry from this kind of dll?
  • If it's a correctly setup MFC module, you shouldn't need to include windows.h  as its in afxwin.h.

    here is a Drx with Mfc & dialog sample you can party on, I also threw in a quick routine to read the registry.

    one more cool goodie, is the class that hides the Mfc dialog while using getxxx & editor interaction.

    Cheers

    DrxMfc.zip

  • Thanks Daniel, your sample is working well, but it seems that I have some other kind of problem? I'll try to investigate further.

    Regards,
    Ranko
  •  you do have all the service packs for VS2005 installed right?

  • Dear Daniel,
    It is strange, I have everything installed well, and still have no idea what is going on.
    Here is the old compile which can be loaded in most recent Bricscad (although compiled with older BRX libs), and the new one which can't (compiled with most recent BRX libs).
    Do you have any idea how to compare those two files and find out what is the problem?

    Best regards,
    Ranko


    quickeningV12 not loading.arxquickeningV12.arx

  • The last one is our BRX application, also not working (not to be confused with the first question) - but the symptoms are same. Maybe Bricscad could give more information when trying to load an application, which will give us more help...
  • Dear Ranko,

    I have tried both modules with V12.1.22 Pro, and both load fine :

    : (ARXLOAD "C:/Temp/quickeningV12 not loading.arx")
    Available commands: AVLOCK, AVUNLOCK, BCOUNT, CLEAN, DEFONT, DESTYLE, DHT, DUP, FLATAREA, LTM, MULTISET, OSNAPSTORE, OSNAPRESTORE, QRECT, SETLAY, SUMMAR, ZOOMSEL
    "C:/Temp/quickeningV12 not loading.arx"
    : C:DY
    : C:IL
    : C:IP
    : C:TL
    : C:WV
    : C:UV
    : C:UD
    : C:UL
    :
    : (ARXLOAD "C:/Temp/quickeningV12.arx")
    Available commands: CLEAN, DHT, DUP, FLATAREA, LTM, MULTISET, QRECT, SETLAY, SUMMAR, ZOOMSEL
    "C:/Temp/quickeningV12.arx"
    : C:DY
    : C:IL
    : C:IP
    : C:TL
    : C:WV
    : C:UV
    : C:UD
    : C:UL

  • I get the same result as Ranko. Running Bricscad v12.1.22 EN on WinXP Pro SP3 in case this helps narrow it down.

    : (ARXLOAD "C:/Documents and Settings/greg/Local Settings/Temp/quickeningV12 not loading.arx")
    * (arxload) : can not LOAD file
    nil
    :
    :
    : (ARXLOAD "C:/Documents and Settings/greg/Local Settings/Temp/quickeningV12.arx")
    Available commands: CLEAN, DHT, DUP, FLATAREA, LTM, MULTISET, QRECT, SETLAY, SUMMAR, ZOOMSEL
    "C:/Documents and Settings/greg/Local Settings/Temp/quickeningV12.arx"
    : C:DY
    : C:IL
    : C:IP
    : C:TL
    : C:WV
    : C:UV
    : C:UD
    : C:UL
    :

  • Oops, missed a bit... my Bricscad is v12.1.22 Pro
  • Indeed both do load in the latest beta. Unless you need features that are in later BRX releases, you may want to stick a release that's been out a while. BRX libraries are forward compatible, but not backwards compatible.

    Cheers : )

  • Dear fellows,

    The trouble is that on some systems those DLLs load, and not on other, even if using the same version of Bricscad. Now, does anybody have an idea how to find out why? Maybe some system DLLs are not OK? How to check?

    :(
  • @Ranko: I've used Dependency Walker with good results and the website says it will run on the later versions of Windows. You might try it out.
    Dependency Walker
  • I've found what's going on: we used wrong Teigha libraries. Now it is working fine. Thanks to everybody for help!

    Regards,
    Ranko
  •  Now, I have another problem: I have installed 13.1.15, and after that, I can't load my SDS applications even after new compile, and what's worse, although I have uninstalled that version and returned to V13.1.12-3 (regarding middle button bug), I can't load those SDS applications either. BRX apps work fine. Does anybody have any idea how to solve this?

    MVS 2010 SP1 (but also didn't work without SP1).
    Windows XP
  •  And I have also tried to compile Daniel's sample (DrxMfc), but it also can't be loaded. :(
This discussion has been closed.