Install Shield Sample - Black Ice Printer Driver API
Version number:

DownloadDownload

    Printer Driver API/Resource Toolkit

    The Printer Driver Resource Toolkit includes InstallShield, MSI, InstallShield MSI, VB.NET, C# and WIX Installation sample projects which install and configure the Black Ice printer driver. The installation sample projects are provided as starting points for creating user specific printer driver installations.

    Full source codes for both an install and an uninstall DLL are also included.* These DLLs implement every required function necessary to install and remove a printer driver.

    Additionally, the documentation included in the Black Ice Resource Toolkit contains detailed information on how to install the Black Ice printer driver with a single function call using installation packages other than InstallShield (packages like Wise and Microsoft Installer).

    The InstallShield project included in the Resource Toolkit was generated with InstallShield 12 and in order to rebuild the sample installation package, InstallShield 12 or newer is required. The MSI Installer sample is written using Visual Studio.

    Multiple Instances of Black Ice printer drivers can be installed on a single system, allowing high-volume document conversion in parallel with multiple numbers of printer drivers.

    List of the available Installation samples in the Printer Driver API/RTK:

    *The Installation samples and the source code is not available in DEMO API/Resource Toolkit.

    InstallShield Install Sample

    The Black Ice printer drivers can be installed as part of a developers existing application install, or as a separate component. To assist with installation, Black Ice Software has developed and included a sample Install Shield script as part of the Resource Toolkit shipped with every release driver. The Install Shield sample is provided in addition to the sample Visual Basic installation, and is based on the dInstallBlackIcePrinter function of the Black Ice printer driver Install DLL.

    The purpose of the Install Shield sample script is to provide developers with an example of how to install the Black Ice printer drivers.

    The Install Shield sample install for the Black Ice printer drivers can easily be customized to meet a company’s specific need, such as installing with a unique printer name or specific default printer settings. Since the Install Shield sample calls a single function of the Black Ice printer driver Install DLL, developers only have to change the parameters of this one function call to reflect their specific printer requirements, such as changing the printer name, port name, printer driver file names, etc. Developers can change specific settings of the Black Ice printer drivers at install time by using the BlackIceDEVMODE DLL or OCX, or they can customize the ini file (BIMININT, for example in the case of the TIFF/Monochrome Printer Driver for Desktop) to install the driver with a specific configuration as the default settings for all users of the Black Ice printer driver.

    The source code is not available in DEMO API/Resource Toolkit.

    InstallShield is a registered trademark and servicemark of InstallShield Corporation in the United States or other countries.

    MSI Install Sample

    Starting with version 8.76, Black Ice Software has added an MSI sample installation to the Black Ice printer driver Resource Toolkit (RTK). The MSI install for the printer driver was created using Visual Studio .Net 2003, using the Install project feature.

    The MSI setup is a basic (simplified) setup of the Black Ice printer driver; it copies the driver files to the required locations, adds the printer driver, print processor and print monitor and finally the printer to the system. The sample MSI install supports specifying the printer driver settings through the printer driver’s INI file.

    As of version 14.81 of the Printer Driver Resource Toolkit, the MSI installs includes multi-driver capabilities, to installer more than one printer driver on the computer. To install more printer drivers, one can use the Installer's user interface, or a built-in command line parameter, as in the following example:

    msiexec.exe /i "[Printer driver MSI install sample]" /PRINTERCOUNT=[1 or 2]

    Additionally, the sample MSI setup allows developers to change the name of the printer and of the printer driver components to meet their specific requirements, since many Black Ice customers need to brand the driver.

    To actually install the printer driver a “custom action” is used. The custom action is a function call from the Install DLL (MYDLL.DLL), included in the RTK. The function called by the MSI installation from the Install DLL makes all of the necessary Win32 API calls to install each printer driver component, including the print processor, print monitor, port, printer driver and the printer. To simplify the install, all component names are written to a registry key, and the Install DLL function reads the names of the printer driver components from that key. This way, the setup developer can easily change the name of the components by changing the registry key values, as shown in the screen shot below.

    When the Black Ice printer driver is installed, the printer settings will be read by the driver from the INI file (BiCIniNt.ini in the case of the Black Ice Color driver). The settings specified in the INI file will be set as default settings for every user on the system. If a setting is not specified in the INI file, the printer driver will use the default values hard coded in the driver, such as the JPEG file format for the color driver.

    Developers can create their own MSI installation for the printer driver, using packages other than Visual Studio, but the sample install was written using Visual Studio .NET since this platform is the one most readily available to developers.

    The primary benefit to using an MSI installation is its convenience and practicality for network wide distribution and deployment. The main reason to use MSI technology is to implement software (mandatory or public) by Windows group policies. Over all, MSI packaging is a standard Windows installation package and provides much more flexible options to install an application, and it is also easier to deploy for all Microsoft Windows based operating systems.

    The source code is not available in DEMO API/Resource Toolkit.

    InstallShield MSI Install Sample

    InstallShield MSI samples available in the OEM Resource Toolkits demonstrate how to create a Black Ice printer driver install in InstallShield 12. There are separate InstallShield MSI samples for Windows 11/10/8/7 and for Windows 2022/2019/2016/2012 Terminal Server printer drivers.


    Supported InstallShield versions:

    Printer Driver InstallShield MSI sample projects can be opened and rebuilt with the following InstallShield versions:

    • InstallShield 12 Professional (and above)
    • InstallShield 12 Premium (and above)

    The InstallShield MSI sample implements install and uninstall procedures including silent installation support, copies driver files, and installs the printer driver during the install process. It also deletes the printer driver and driver files during uninstall process.

    The MSI setup is a basic (simplified) setup of the Black Ice printer driver; it copies the driver files to the required locations, adds the printer driver, print processor and print monitor and finally the printer to the system. The sample MSI install supports specifying the printer driver settings through the printer driver’s INI file.

    The primary benefit to using an InstallShield MSI installation is its convenience and practicality for network wide distribution and deployment. The main reason to use MSI technology is to implement software (mandatory or public) by Windows group policies.

    The source code is not available in DEMO API/Resource Toolkit.

    VB.NET Install Sample

    Black Ice Software has developed and included a Visual Basic .NET install as part of the Resource Toolkit shipped with every release driver. The VB .NET install is provided in addition to the sample Install Shield script, and is based on the dInstallBlackIcePrinter function of the Black Ice printer driver Install DLL.

    The purpose of the VB .NET install is to provide developers with an example of how to install the Black Ice printer drivers using a package other than Install Shield. Developers can use the VB .NET install as a starting point for their own custom installation, or can convert the VB .NET install to their programming language of choice, such as C#, J#, etc.

    The VB .NET install for the Black Ice printer drivers can easily be customized to meet a company’s specific need. Since the VB .NET install calls a single function of the Black Ice printer driver Install DLL, developers only have to change the parameters of this one function call to reflect their specific printer requirements, such as changing the printer name, port name, printer driver file names, etc. Developers can change specific settings of the Black Ice printer drivers at install time by using the BlackIceDEVMODE DLL or OCX, or they can customize the ini file (BUMININT, for example in the case of the TIFF/Monochrome Printer Driver for Desktop) to install the driver with a specific configuration as the default settings for all users of the Black Ice printer driver.

    Additionally, the VB.NET install for the Black Ice printer drivers provides a concrete example of how to install multiple copies of the Black Ice printer drivers on the same system.

    The source code is not available in DEMO API/Resource Toolkit.

    C# Install Sample

    Black Ice Software has developed and included a C# install as part of the Resource Toolkit shipped with every release driver. The C# install is provided in addition to the sample Install Shield script, and is based on the dInstallBlackIcePrinter function of the Black Ice printer driver Install DLL.

    The purpose of the C# install is to provide developers with an example of how to install the Black Ice printer drivers using a package other than Install Shield. Developers can use the C# install as a starting point for their own custom installation, or can convert the C# install to their programming language of choice.

    The C# install for the Black Ice printer drivers can easily be customized to meet a company’s specific need. Since the C# install calls a single function of the Black Ice printer driver Install DLL, developers only have to change the parameters of this one function call to reflect their specific printer requirements, such as changing the printer name, port name, printer driver file names, etc. Developers can change specific settings of the Black Ice printer drivers at install time by using the BlackIceDEVMODE DLL or OCX, or they can customize the ini file (BIMININT, for example in the case of the TIFF/Monochrome Printer Driver for Desktop) to install the driver with a specific configuration as the default settings for all users of the Black Ice printer driver.

    Additionally, the C# install for the Black Ice printer drivers provides a concrete example of how to install multiple copies of the Black Ice printer drivers on the same system.

    WIX Install Sample

    The Windows Installer XML (WiX) is a free toolset that builds Windows installation packages from XML source code. You can generate MSI installs using WIX. An example demonstrates how to create a WIX install of Black Ice printer driver. Note: This WIX install is only a basic install. You are able to totally customize your WIX install and you can create your own scripts free for installing/uninstalling the printer driver.

    The WIX sample uses functions of the install and uninstall dll for installing/uninstalling the printer driver.

    The WIX install uses an external file (MyWIXDefines.wxs) for storing the name of the driver files and some other resources.

    The source code is not available in DEMO API/Resource Toolkit.