在将我的驱动程序项目移动到WDK8和Visual Studio 2012的过程中,我遇到了一个关于驱动程序包输出目录配置的小问题。幸运的是,使用标准项目模板和这些步骤很容易重现:
在配置下拉列表中选择“所有配置”,然后设置
配置属性|一般|输出目录到
“$(SolutionDir)bin \ $(平台)\ $(ConfigurationName)\”放置全部
在解决方案目录的bin子目录中输出,然后单击“确定”。
此时,dir \Projects\ndislsf1
返回:
Directory of C:\Projects\ndislwf104/25/2013 09:42 AM <DIR> . 04/25/2013 09:42 AM <DIR> .. 04/25/2013 09:42 AM <DIR> ndislwf1 04/25/2013 09:42 AM <DIR> ndislwf1 Package 04/25/2013 09:46 AM 14,811,136 ndislwf1.sdf 04/25/2013 09:42 AM 7,627 ndislwf1.sln 2 File(s) 14,818,763 bytes 4 Dir(s) 6,701,723,648 bytes free
现在,按F6构建解决方案
目前为止一切顺利,dir \ Projects \ ndislsf1显示我们的bin目录已创建,进一步检查显示所有输出文件都已正确放置在那里:
04/25/2013 09:47 AM <DIR> .
04/25/2013 09:47 AM <DIR> ..
04/25/2013 09:47 AM <DIR> bin
04/25/2013 09:47 AM <DIR> ndislwf1
04/25/2013 09:47 AM <DIR> ndislwf1 Package
04/25/2013 09:46 AM 14,811,136 ndislwf1.sdf
04/25/2013 09:42 AM 7,627 ndislwf1.sln
2 File(s) 14,818,763 bytes
5 Dir(s) 6,695,829,504 bytes free
在标准工具栏中,选择解决方案中的“Vista Release” 配置下拉列表并再次按F6以构建解决方案
Directory of C:\Projects\ndislwf1{{1}}
不幸的是,Vista Release输出被写入x64而不是bin子目录。实际上,所有其他项目的“输出”也会忽略bin子目录并写入x64。
是否有其他人遇到此问题,如果有,是否有预期的解决方法或修复方法?
答案 0 :(得分:4)
我在大多数(但不是全部)构建配置上遇到了同样的问题(Vista Debug Win32出于某种原因正确出现)。以下是我如何解决它/解决它:
在另一个编辑器中打开nnn_package.vcxproj文件。
注意到上面的构建配置(vista | debug | win32)的条目是自己定位的,通过“PropertyGroup”条目与所有其他配置条目分开,除其他外,设置“PackageDir” $(OUTDIR)nnn_package “/ PackageDir”
(替换“少于/多于”)
将此部分移至 - 以后 - 所有构建配置条目并保存。
在VS2012中重新打开解决方案,现在无论配置名称和平台如何,所有包都会输出到正确的文件夹。
希望这有帮助。