| MIL 10 User Guide
| Customize Help

Redistributing MIL or MIL-Lite DLL files and device drivers with your application



See also
Availability
Available in MIL-Lite

Available in MIL

To distribute your MIL or MIL-Lite application, you will have to redistribute the MIL or MIL-Lite DLL files and the necessary device drivers with your application.

When installing your application on a computer with the same required version of MIL or MIL-Lite DLL files and the necessary device drivers already installed, your application's setup program must not reinstall MIL or MIL-Lite. Your application should use the version of MIL or MIL-Lite already installed on the computer.

Conversely, if the version of the MIL or MIL-Lite files on the computer is different from your application's required version, you must reinstall the MIL or MIL-Lite DLL files and device drivers with the version your application requires.

Redistributing directly from the MIL or MIL-Lite DVD

If the target computer (on which you want to install the MIL or MIL-Lite DLLs and device drivers) is immediately accessible, you can install the DLLs directly from the MIL or MIL-Lite DVD. To do so, run the MIL or MIL-Lite setup program and choose the MIL runtime option.

Redistributing using your own setup program

To redistribute the MIL or MIL-Lite DLLs and device drivers when using your own setup program, you can have your application's setup program call MIL or MIL-Lite's redistribution setup program in one of two ways:

  • Interactive redistribution. Prompts your customer for setup information.

  • Silent redistribution. Uses a custom response file, instead of prompting your customer for information.

Determining the required license for your application

The successful distribution of a MIL application requires the appropriate runtime license for the various modules used within the application. Under Windows, you can use the Matrox Profiler utility to determine the MIL license that your application requires for the MIL package(s) used. The following steps outline how to establish the required MIL license:

  • Make sure that you have an active MIL development license, or a MIL provisional license (that is, evaluation or temporary license).

  • Start an interactive trace using Matrox Profiler. To create a new trace log in Matrox Profiler, choose Generate New Trace from the File menu. For more information concerning generating trace logs in Matrox Profiler, see the Matrox Profiler and trace logs section of Chapter 31: Development and debugging tools and techniques.

  • Run your application, making sure to execute all aspects of your application that use MIL. This needs to include supported MIL system selections (for example, GPU-based processing and GigE Vision, IEEE 1394 IIDC and/or USB3 Vision-based image acquisition), MIL compression and decompression operations, and Distributed MIL calls.

  • Terminate the application properly (that is, the MappFree() or MappFreeDefault() function must execute without errors).

  • In Matrox Profiler, choose Show Trace Information from the View menu.

In the above-mentioned window (Show Trace Information), you should see the output of the trace-log, along with a list of the MIL package(s) that were used during the execution of the application. These are the MIL package(s) that your MIL license must grant access to successfully run your application in its entirety.

The previous steps are only applicable for applications traced under Windows. To determine the required MIL package(s) that must be licensed for applications running under Linux, you can either generate a trace-log to file and examine it in Matrox Profiler (in a Windows environment) using the above-mentioned steps, or use the following command in Gencode before starting your application.

gencode /m

Once your application has finished its execution, you must stop Gencode's monitoring process by pressing the Enter key. Gencode will then list the MIL package(s) used by your application. These are the MIL package(s) that your MIL license must grant access to successfully run your application in its entirety.