vs2015 + wdk10 调试vmware中win7 32bit

时间:2022-02-10 06:41:16
已经不知道多少年没有访问csdn了……时间过得好快呀!

之前一直用vs2012写kmdf,但并不是基于kmdf模板写的,当时也是用InstDrv来加载sys。现在换了一个环境,装上了vs2015,猛然间发现,umdf 变成了umdf v2了,之前还是cpp,现在也变成c了,变化太快,有点跟不上时代了……

阅读了https://msdn.microsoft.com/zh-cn/library/windows/hardware/hh439659%28v=vs.85%29.aspx,照着文档的步骤设置,但是有点怀疑wdk10是否真的支持win7的驱动开发:
vs2015 + wdk10 调试vmware中win7 32bit

接着跟进文档的步骤,我在vmware中的安装的是win7 32bit,所以对应的,应该在目标机器安装这个msi文件:
vs2015 + wdk10 调试vmware中win7 32bit

上传安装,并关闭了防火墙,在host中ping目标机器:
vs2015 + wdk10 调试vmware中win7 32bit

接着就是在driver->test->configure devices 中添加新设备:
vs2015 + wdk10 调试vmware中win7 32bit

安装过程中会重启还几次,然后到属性页,开始部署:(这里网络抽了,突然没法上传图片 vs2015 + wdk10 调试vmware中win7 32bit,等太久,不等了,继续写完帖子)
vs2015 + wdk10 调试vmware中win7 32bit
vs2015 + wdk10 调试vmware中win7 32bit
vs2015 + wdk10 调试vmware中win7 32bit

期间遇到很多问题,甚至上了channel 9->https://channel9.msdn.com/Events/WinHEC/2015?r=%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%E5%BC%80%E5%8F%91%E5%9F%BA%E7%A1%80观看了相关的视频,只是最后,我还是遇到两个问题:
error : Unknown or unsupported property value '2.0' for UmdfVersion for target OS 'Windows7' (0x0601).
vs2015 + wdk10 调试vmware中win7 32bit

以“Unknown or unsupported property value '2.0' for UmdfVersion for target OS 'Windows7' (0x0601).”为关键字,3个大搜索引擎都试了一遍,一个结果都没有,实在没法,只能来求教坛友了 vs2015 + wdk10 调试vmware中win7 32bit

这个问题到底是不是wdk10 不支持win7 32bit所造成的?!






14 个解决方案

#1


[其实我有继续跟进过:
vs2015 + wdk10 调试vmware中win7 32bit
vs2015 + wdk10 调试vmware中win7 32bit,
引用 1 楼 ciodragon 的回复:
其实我有继续跟进过:
vs2015 + wdk10 调试vmware中win7 32bit
vs2015 + wdk10 调试vmware中win7 32bit


继续来到此处:https://msdn.microsoft.com/en-us/library/windows/hardware/jj200334%28v=vs.85%29.aspx,然后就没法再继续了……求大神指教, 求大神指教哈,我到底哪里出错?!, 朋友在么,小弟有问题请教。我也在用VS2015调试内核,但我遇见个问题,每当我选择drive--test--configure device时,都会报错,提示“共享边界导出请求不合适”,你遇见过这个问题么?看微软的官网指导,在主计算机上的VS2015设置目标计算机时,直接选择drive--test--configure device就行了呀,可我在这步总是出问题。,
引用 4 楼 WiiUPS4 的回复:
朋友在么,小弟有问题请教。我也在用VS2015调试内核,但我遇见个问题,每当我选择drive--test--configure device时,都会报错,提示“共享边界导出请求不合适”,你遇见过这个问题么?看微软的官网指导,在主计算机上的VS2015设置目标计算机时,直接选择drive--test--configure device就行了呀,可我在这步总是出问题。

参考以下网址
http://*.com/questions/34027555/why-am-i-getting-an-error-before-configuring-a-device-in-visual-studio-2015,
引用 4 楼 WiiUPS4 的回复:
朋友在么,小弟有问题请教。我也在用VS2015调试内核,但我遇见个问题,每当我选择drive--test--configure device时,都会报错,提示“共享边界导出请求不合适”,你遇见过这个问题么?看微软的官网指导,在主计算机上的VS2015设置目标计算机时,直接选择drive--test--configure device就行了呀,可我在这步总是出问题。


vs2015 + wdk10 调试vmware中win7 32bit对不住呀朋友,我估计是给的分太低了,没吸引大神来回答,所以很久都没有关注此贴。另外还有一点是,我已经登陆了,但是帖子有更新居然没提示!, 求大神门推荐一本windows驱动方面的书籍。,
引用 4 楼 WiiUPS4 的回复:
朋友在么,小弟有问题请教。我也在用VS2015调试内核,但我遇见个问题,每当我选择drive--test--configure device时,都会报错,提示“共享边界导出请求不合适”,你遇见过这个问题么?看微软的官网指导,在主计算机上的VS2015设置目标计算机时,直接选择drive--test--configure device就行了呀,可我在这步总是出问题。


如果你的问题还没有解决的话,或许你可以参考这个 http://www.th7.cn/system/win/201603/156483.shtml, 也想学驱动,路过。,
引用 9 楼 guyuguang8628391 的回复:
也想学驱动,路过。


不知道该不该结贴,其实vs2015 不支持在vmware中调试,据我所查到资料,真正想要用vs2015自带的调试模块,则需要双机调试(两台电脑都是物理机)。

而如果想要用vmware作为测试机,则又需要辅以instdrv和debug view这些软件,并且是legacy(遗留)版本的驱动,对于legacy这个词非常反感,就像当年上大学,vs2010都要出了,而学校仍然用破旧的vc++6.0,学dos汇编时用masm,这些老东西虽说能打下基础,但是却非常过时(工作时真心用不上)。

鸡肋之物,食之无味,弃之可惜,有时候真的要学会舍弃,毕竟有舍才有得……, 其实我上面所说的“查到资料”,跟8楼所给 http://www.th7.cn/system/win/201603/156483.shtml 相近,之后的话,也就是我后面所说的了……, 我直接用没有出问题,但是调试也只是发布驱动到目标机器上,没有出现BUG时会有错误反馈信息。, wdk10 可以用在win7x86,
引用 10 楼 ciodragon 的回复:
Quote: 引用 9 楼 guyuguang8628391 的回复:

也想学驱动,路过。


不知道该不该结贴,其实vs2015 不支持在vmware中调试,据我所查到资料,真正想要用vs2015自带的调试模块,则需要双机调试(两台电脑都是物理机)。

而如果想要用vmware作为测试机,则又需要辅以instdrv和debug view这些软件,并且是legacy(遗留)版本的驱动,对于legacy这个词非常反感,就像当年上大学,vs2010都要出了,而学校仍然用破旧的vc++6.0,学dos汇编时用masm,这些老东西虽说能打下基础,但是却非常过时(工作时真心用不上)。

鸡肋之物,食之无味,弃之可惜,有时候真的要学会舍弃,毕竟有舍才有得……



兄弟,这个问题你解决了么?我也出现了类似问题,部署都能成功,就是没有办法开始调试,总是创建调试进程失败,attach可以看见kernel进程,点击attach还是没有办法调试,根本起不来。。难道只能换virtualbox试试?]

#1


[其实我有继续跟进过:
vs2015 + wdk10 调试vmware中win7 32bit
vs2015 + wdk10 调试vmware中win7 32bit,
引用 1 楼 ciodragon 的回复:
其实我有继续跟进过:
vs2015 + wdk10 调试vmware中win7 32bit
vs2015 + wdk10 调试vmware中win7 32bit


继续来到此处:https://msdn.microsoft.com/en-us/library/windows/hardware/jj200334%28v=vs.85%29.aspx,然后就没法再继续了……求大神指教, 求大神指教哈,我到底哪里出错?!, 朋友在么,小弟有问题请教。我也在用VS2015调试内核,但我遇见个问题,每当我选择drive--test--configure device时,都会报错,提示“共享边界导出请求不合适”,你遇见过这个问题么?看微软的官网指导,在主计算机上的VS2015设置目标计算机时,直接选择drive--test--configure device就行了呀,可我在这步总是出问题。,
引用 4 楼 WiiUPS4 的回复:
朋友在么,小弟有问题请教。我也在用VS2015调试内核,但我遇见个问题,每当我选择drive--test--configure device时,都会报错,提示“共享边界导出请求不合适”,你遇见过这个问题么?看微软的官网指导,在主计算机上的VS2015设置目标计算机时,直接选择drive--test--configure device就行了呀,可我在这步总是出问题。

参考以下网址
http://*.com/questions/34027555/why-am-i-getting-an-error-before-configuring-a-device-in-visual-studio-2015,
引用 4 楼 WiiUPS4 的回复:
朋友在么,小弟有问题请教。我也在用VS2015调试内核,但我遇见个问题,每当我选择drive--test--configure device时,都会报错,提示“共享边界导出请求不合适”,你遇见过这个问题么?看微软的官网指导,在主计算机上的VS2015设置目标计算机时,直接选择drive--test--configure device就行了呀,可我在这步总是出问题。


vs2015 + wdk10 调试vmware中win7 32bit对不住呀朋友,我估计是给的分太低了,没吸引大神来回答,所以很久都没有关注此贴。另外还有一点是,我已经登陆了,但是帖子有更新居然没提示!, 求大神门推荐一本windows驱动方面的书籍。,
引用 4 楼 WiiUPS4 的回复:
朋友在么,小弟有问题请教。我也在用VS2015调试内核,但我遇见个问题,每当我选择drive--test--configure device时,都会报错,提示“共享边界导出请求不合适”,你遇见过这个问题么?看微软的官网指导,在主计算机上的VS2015设置目标计算机时,直接选择drive--test--configure device就行了呀,可我在这步总是出问题。


如果你的问题还没有解决的话,或许你可以参考这个 http://www.th7.cn/system/win/201603/156483.shtml, 也想学驱动,路过。,
引用 9 楼 guyuguang8628391 的回复:
也想学驱动,路过。


不知道该不该结贴,其实vs2015 不支持在vmware中调试,据我所查到资料,真正想要用vs2015自带的调试模块,则需要双机调试(两台电脑都是物理机)。

而如果想要用vmware作为测试机,则又需要辅以instdrv和debug view这些软件,并且是legacy(遗留)版本的驱动,对于legacy这个词非常反感,就像当年上大学,vs2010都要出了,而学校仍然用破旧的vc++6.0,学dos汇编时用masm,这些老东西虽说能打下基础,但是却非常过时(工作时真心用不上)。

鸡肋之物,食之无味,弃之可惜,有时候真的要学会舍弃,毕竟有舍才有得……, 其实我上面所说的“查到资料”,跟8楼所给 http://www.th7.cn/system/win/201603/156483.shtml 相近,之后的话,也就是我后面所说的了……, 我直接用没有出问题,但是调试也只是发布驱动到目标机器上,没有出现BUG时会有错误反馈信息。, wdk10 可以用在win7x86,
引用 10 楼 ciodragon 的回复:
Quote: 引用 9 楼 guyuguang8628391 的回复:

也想学驱动,路过。


不知道该不该结贴,其实vs2015 不支持在vmware中调试,据我所查到资料,真正想要用vs2015自带的调试模块,则需要双机调试(两台电脑都是物理机)。

而如果想要用vmware作为测试机,则又需要辅以instdrv和debug view这些软件,并且是legacy(遗留)版本的驱动,对于legacy这个词非常反感,就像当年上大学,vs2010都要出了,而学校仍然用破旧的vc++6.0,学dos汇编时用masm,这些老东西虽说能打下基础,但是却非常过时(工作时真心用不上)。

鸡肋之物,食之无味,弃之可惜,有时候真的要学会舍弃,毕竟有舍才有得……



兄弟,这个问题你解决了么?我也出现了类似问题,部署都能成功,就是没有办法开始调试,总是创建调试进程失败,attach可以看见kernel进程,点击attach还是没有办法调试,根本起不来。。难道只能换virtualbox试试?]