我们正在开发一个DLL,它从WinDDK中调用通用的WinUsb函数。该DLL需要在Windows的32位和64位版本中工作,包括xp,vista,win7和win8。为几个Windows版本(xp,win7,vista)开发驱动程序
我的问题是,我们如何通过定位所有这些平台来管理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的一本书教育自己。 – 2012-07-16 09:06:36
@Hans:也许我的问题是误导。我正在使用VS创建一个调用泛型WinUsb函数的DLL。为了调用WinUsb函数,我从DDK引用适当的winusb.lib函数。 – SomethingBetter 2012-07-16 09:38:33
@SomethingBetter:汉斯是对的。您正在尝试调用用于驱动程序的函数,并且您正尝试使用不适用于驱动程序的开发平台来执行此操作。你可能会也可能不会逃避这一点,但这两种方式都会遇到很多麻烦。 – 2012-07-18 14:36:42