【发布时间】:2012-07-15 01:56:21
【问题描述】:
我们正在开发一个 DLL,它从 WinDDK 调用通用 WinUsb 函数。此 DLL 需要在 32 位和 64 位版本的 Windows 中工作,包括 xp、vista、win7,可能还有 win8。
我的问题是,我们如何通过针对所有这些平台来管理 Visual Studio 2010 解决方案? WinDDK 库对于每个操作系统都是不同的,所以如果我从代码中引用一个库:
#### #pragma comment (lib , "C:\\WinDDK\\7600.16385.1\\lib\\wlh\\i386\\winmm.lib" )
或者通过引用project options->includes section 中的库,该项目仅适用于特定的目标架构。 (在这个例子中,Vista 32 位,因为我包括了 'wlh')。
我们是否应该为每个不同的操作系统目标创建不同的项目?
【问题讨论】:
-
你会遇到很多麻烦,你不使用 ddk 创建 DLL,也不使用 VS。用 Walter Oney 的书自学。
-
@Hans:也许我的问题具有误导性。我正在使用 VS 创建一个调用通用 WinUsb 函数的 DLL。为了调用 WinUsb 函数,我从 DDK 中引用了相应的 winusb.lib 函数。
-
@SomethingBetter:汉斯是对的。您正在尝试调用用于驱动程序的函数,并且您正在尝试使用不适合驱动程序的开发平台来执行此操作。您可能会也可能不会逃脱,但无论哪种方式都会带来很多麻烦。
标签: visual-studio-2010 driver 32bit-64bit wdk