Libwdi 编译安装
1. 编译工具Libwdi 编译安装
可以采用MinGW,MinGW-w64,Microsoft Visual C++ (Visual Studio)等编译,但最好的是采用Windows DDK build environment进行编译,为了支持XP系统,建议编译环境设置在XP上,否则从win7等系统编译出来的libwdi.dll不能再XP上使用。
编译步骤如下:
1) 下载并安装winddk;
a) 从http://www.microsoft.com/en-us/download/details.aspx?id=11800下载WDK,目前是7.1.0版本;
b) 解开ISO文件,执行 KitSetup.exe,选择除模拟环境之外的选项进行安装,比如安装到 D:/WinDDK/7600.16385.1 目录下;
2) 下载源码
从 http://sourceforge.net/projects/libwdi/下载最新的libwdi源码,并解开到本地目录,比如:D:\Workroom\practise\open-source\libwdi-1.2.2
3) 下载辅助工具
从 http://code.google.com/p/usb-travis/下载 libusbK:libusbK-3.0.5.16-bin.7z
从 http://sourceforge.net/apps/trac/libusb-win32/wiki下载
libusb-win: libusb-win32-bin-1.2.6.0.zip
4) 编辑D:\Workroom\practise\open-source\libwdi-1.2.2\msvc\config.h
注:参考红色字体部分修改
/* config.h. Manual config for MSVC. */
#ifndef _MSC_VER
#warn "msvc/config.h shouldn't be included for your development environment."
#error "Please make sure the msvc/ directory is removed from your build path."
#endif
#if defined(_PREFAST_)
/* Disable "Banned API Usage:" errors when using WDK's OACR/Prefast */
#pragma warning(disable:28719)
#endif
/* embed WinUSB driver files from the following DDK location */
#ifndef DDK_DIR
//#define DDK_DIR "C:/Program Files (x86)/Windows Kits/8.0"
#define DDK_DIR "D:/WinDDK/7600.16385.1"
#endif
/* embed libusb0 driver files from the following location */
#ifndef LIBUSB0_DIR
#define LIBUSB0_DIR "D:/Workroom/practise/open-source/libusb-win32-bin-1.2.6.0"
#endif
/* embed libusbK driver files from the following location */
#ifndef LIBUSBK_DIR
#define LIBUSBK_DIR "D:/Workroom/practise/open-source/libusbK-3.0.5.16-bin"
#endif
/* embed user defined driver files from the following location */
#ifndef USER_DIR
// #define USER_DIR "C:/signed-driver"
#endif
/* DDK WDF coinstaller version */
//#define WDF_VER 1011
#define WDF_VER 1009
/* 32 bit support */
#define OPT_M32
/* 64 bit support */
#define OPT_M64
/* embed IA64 driver files */
//#define OPT_IA64
/* Debug message logging */
//#define ENABLE_DEBUG_LOGGING
/* Debug message logging (toggable) */
#define INCLUDE_DEBUG_LOGGING
/* Message logging */
#define ENABLE_LOGGING 1
5) 编译
a) 在“开始“-》”所有程序“-》”Windows Driver Kits”…下选择对应Windows XP的编译环境,会开一个命令行窗口
b) Cd 到 D:\Workroom\practise\open-source\libwdi-1.2.2目录下,
执行:ddk_build.cmd DLL
正常情况下,编译成功,编译完以后的动态库就在D:\Workroom\practise\open-source\libwdi-1.2.2\libwdi.dll
6) 安装
将libwdi.dll拷贝到c:\windows\system32下即可