NI doesn't provide a recommended a specific approach to this situation as both methods of calling your LabVIEW code in C have their respective pro's and cons. If we make a .dll that will be directly called in C this process is a little more efficient and easy to complete. The .dll will be included in the header file of the C code, if you upgrade the .dll code you may have to make some slight modifications to your C code. With an ActiveX dll you can almost think of it as your code advertising its functions in the "yellow pages" of your code. Active X acts as an intermediary and provides a list of the methods available in the dll. This would allow you to possibly upgrade the dll without changing the C code; however you don't have quite the same control and privacy of directly accessing the .dll directly. In the future chembox please link the thread that relates to this in the post as it will help others catch up to speed on the issue faster

.
Thank You
Eric Reid
National Instruments
Motion R&D