I have a native MDL application that runs perfectly in MicroStation Update 16, but in MicroStation Update 17 I get a MDL loader error 127
I'm using the latest MicroStation SDK when compiling the application.
I have other native MDL application running fine on Update 17
The application failing is using the library ECObjects.lib to handle ItemTypes
If I comment out the parts of the application using routines and structures from ECObjects.lib, the application loads without errors, so I expect that it has something to do with loading ECObjects6.dll
Can anyone tell me how to solve this problem of tell me what error 127 means
Jesper Stahl Madsen
Hi Jesper Stahl Madsen,
Jesper Stahl Madsen said:I'm using the latest MicroStation SDK when compiling the application.
MicroStation CONNECT Edition Update 17.0 when using MicroStation CONNECT Edition SDK Update 16.2 did have a slight function signature alignment issue for at least one EC API function that should be corrected if you download and install MicroStation CONNECT Edition SDK Update 17 that (as of late yesterday) is now available for download.
Please completely remove the previous MicroStation CONNECT SDK Update 16.2 and upgrade to the 17.0 SDK, recompile your application(s) and see if the problem is resolved, or if you are still having an issue that we can further help with.
Thank you and HTH,Bob
Answer Verified By: Jesper Stahl Madsen
Thank you Bob! This new SDK version solved my problem :-)
When I compile my application using the new Update 17 SDK, the compiled version will not run on a MicroStation Update 16.
Normally MDL applications are backward compatible, and can run on older versions of MicroStation, but not with this SDK update.
Has this something with the new signature to do, and can it be avoided?
In an environment where not all users are one the same MicroStation Update, we have a problem, when all users use the same workspace where mdl application are located on a server
Jesper Stahl Madsen said:Normally MDL applications are backward compatible, and can run on older versions of MicroStation
I think this feature is just a consequence, but was not promised or part of API specification.
Jesper Stahl Madsen said:Has this something with the new signature to do, and can it be avoided?
I did not do any analysis, but it's general feature of native API that it's simple to break compatibility.
Jesper Stahl Madsen said:In an environment where not all users are one the same MicroStation Update, we have a problem, when all users use the same workspace where mdl application are located on a server
In my opinion the problem is in the wrong assumption (never promised backward compatibility) and wrong setup. My experience with project for different customers is that native code is alwyas compiled using specific SDK and compiler (so sometimes compiled several times) and assigment between product versions and deployed application is done through local installation (some companies prefer it) or proper configuration files (every product has own GUID, so variable can be pointed to different folder based on this product/version identification).
Bentley Accredited Developer: iTwin Platform - AssociateLabyrinth Technology | dev.notes() | cad.point