This document outlines the steps for upgrading from version 7.x or above to a newer version of WinDriver.
For upgrade instructions from/to earlier versions of WinDriver, refer to Technical Document #127.
Upgrade Steps:
- Preliminary Step: Verify that the New Version Supports Your Target Platform(s)
- Acquire a New WinDriver License (Registered Users)
- Upgrade Your Driver Project
- Upgrade Your Device INF File (Windows)
- Upgrade Your Driver Distribution / Installation
- Preliminary Step: Verify that the New Version Supports Your Target Platform(s)
Before upgrading to a newer version of WinDriver, verify that the newer version supports the operating system and CPU configurations for the target platforms on which you intend the driver to be used.
For a list of configurations supported in the latest version of WinDriver, refer to Technical Document #4.
For an historic overview, which lists configurations supported in earlier versions of WinDriver, refer to Technical Document #50.
Back to Top
- Acquire a New WinDriver License
(Registered Users)
If you are using a registered version of WinDriver, contact Jungo's sales department to acquire a WinDriver license registration string for the new version. Then register the new license from DriverWizard (File | Register WinDriver) and from your code (if you select to rebuild your code).
Note that if you have a valid Support & Upgrade Subscription you are entitled to receive a new license free of charge.
Back to Top
- Upgrade Your Driver Project
WinDriver is backwards compatible, therefore code developed with an earlier version should generally work, without modification, with the driver module (windrvr6.sys/o/ko/dll or a renamed version of this driver) from a newer version, provided the code is not rebuilt with the files and license from the newer version. However, in order to fully utilize the new driver module and enjoy all bug fixes and enhancements provided by the newer version, it is recommended to also upgrade your driver project to use the new driver files.
To upgrade your driver code, follow these steps:
- WinDriver API DLL / Shared Object Upgrade:
In version 8.00 we implemented versioning of the high-level WinDriver API DLL/shared object. Consequently, the name of this module has changed from wd_utils to wdapi<version> (e.g., wdapi800 for version 8.00 of WinDriver). This enables you to upgrade your driver, including the DLL/shared object, without worrying about the possible effects on other drivers, developed with earlier versions of WinDriver, which may be using the same module.
To use the new WinDriver API DLL/shared object, simply build your code with the new version's library module - WinDriver\lib\<CPU>\ wdapi<new_version>.lib (Windows - MSDEV, Windows CE) / WinDriver\lib\<CPU>\wdapi_borland<new_version>.lib (Windows - Borland C++ Builder) / WinDriver/lib/libwdapi<new_version>.so (Linux, Solaris) - as demonstrated in the sample and generated DriverWizard projects from version 8.x and above of WinDriver.
Similarly, the name of the WinDriver API .NET DLL changed in version 8.00 from wdapi_dotnet.dll to wdapi<version>_dotnet.dll (e.g., wdapi800_dotnet.dll in version 8.00 of WinDriver) and the DLL was moved to the WinDriver\lib\<CPU>\<.NET version>\ directory (e.g., WinDriver\lib\x86\v1.1.4322\).
Note that if your code uses the wdapi DLL/shared object, you will need to distribute wdapi<version>.dll (Windows, Windows CE) / libwdapi<version>.so (Linux, Solaris) with your driver. Windows .NET users should also distribute wdapi<version>_dotnet.dll.
- Upgrading from v7.x to v8.x and above:
When upgrading from v7.x to v8.00 or above, you should also be aware of the following issues:
- WinDriver Source Files Location: In version 8.00 the WinDriver C source files were moved from the WinDriver/src directory to the WinDriver/src/wdapi/ directory. The .NET source files were moved from the WinDriver/wdapi.net/ directory to the WinDriver/src/wdapi.net/ directory.
If your project uses the wdapi (previously wd_utils) DLL/shared object (see above), this should not normally affect you. However, if you have included any WinDriver source files directly in your project you may need to modify your project/make file to point to the new source files location.
- When upgrading from version 7.00 - update your project's files search paths: Beginning with version 7.01 of WinDriver, the include path in the WinDriver project/make files contains the path to the WinDriver/ and WinDriver/include/ directories, and the #include statements in the WinDriver source files and generated DriverWizard code were consequently modified to indicate only the name of the header file to include, instead of the full/relative path to the file (as done in earlier versions).
In light of these changes, when rebuilding a driver project from version 7.00 or earlier of WinDriver with the source files from version 7.01 or above, you may need to modify your project/make file and add the path to the WinDriver/ and WinDriver/include/ directories to the project's include path in order to successfully build the project.
- Register Your New License (Registered Users):
Modify the driver code to register your new license - i.e., replace the license string in the call to WDU_Init() (USB) / WDC_DriverOpen() (PCI/ISA/PCMCIA) / WD_License() (low-level API) from your code.
- Rebuild your driver project with the source files from the new version.
Back to Top
- Upgrade Your Device INF File (Windows)
On Windows Vista/Server 2003/XP/2000 (and Windows 98/Me - in version 9.20-): If you have created a driver for a Plug-and-Play device (USB/PCI/CardBus/PCMCIA), it is recommended to create and install a new INF file for your device, which registers it with the driver module from the new version - windrvr6.sys (or your renamed version of this driver - v9.x+). You can use DriverWizard from the new version to generate the new INF file, or modify the driver version in your existing INF file.
Back to Top
- Upgrade Your Driver Distribution / Installation
Create a new driver installation package, which contains the driver module (windrvr6.sys/o/ko/dll, or a renamed version of this driver) and related files from the new version, as well as an installation program that installs the new driver.
For Windows Vista/Server 2003/XP/2000, for example, you would normally distribute the new windrvr6.sys, windrvr6.inf and wd<new_version>.cat (v8.10+) files, the wdreg.exe or wdreg_gui.exe utility, difxapi.dll (v8.11+), your device INF file (if created), the wdapi<new_version>.dll (if used from your driver project), and your Kernel PlugIn driver (if you have created such a driver).
Specific driver distribution instructions can be found in the Distributing Your Driver chapter of the new manual. The instructions for Windows are also summarized in Technical Document #132 (v81.x and above) / Technical Document #130 (v8.0x).
Version-Specific Installation Upgrade Notes:
Back to Top
|