一.安装Windows Driver Kit 8
1首先在计算机上安装VS2012 (12很容易安装,安装步骤略),然后到官网上下载Windows Driver Kit 8 下载地址:
http://msdn.microsoft.com/zh-cn/windows/hardware/hh852362/

下载完毕点击 进行安装。安装模式有两种,一种是在线直接安装,一种是下载安装包到本地,之后再进行安装
(如果网速够快建议直接在线安装。下载安装包安装,会多一步操作,由于刚开始不知道那一步操作,运行2012报一个错误,也无法进行调试设置,所以搞得我头大了好几天!!!)
1.  在线安装,直接默认路径即可,安装完应该没有问题的,本人没试过。
2.  说下下载安装包安装吧:下载完全部文件307M,打开文件夹点击其中的 文件安装,一路OK,最后点击finish完成安装。安装完别急着打开2012,再次点 这次选择在线安装,过程中会有两个选项,一个yes...,一个no,我选了yes,具体什么意思,不清楚,嘿嘿。然后next,进度条很快读完。到此Windows
Driver Kit 8就已经安装成功了,这时打开2012,会发现新建项目中多了一些Driver项目,菜单栏上也多出了一个菜单选项DRIVER。
二 驱动项目与虚拟机com串口联机调设置
  怎样在2012下直接生成DDK驱动项目我目前还没搞出来,不过可以通过2012把我们写的驱动加载转换成2012可以运行的项目
  就让我们用最简单的Hello级DDK驱动演示下吧,写好Hello.c  makefile和sources文件。
然后运行2012

选择 文件打开Convert Sources/Dirs...
找到驱动所在的文件夹,选中sources文件 

这时2012就会对我们的驱动项目进行自动转换了,转换完成后还会弹出对话框询问你是否查看有关转换细节的记录,这里随意。

然后在上边工具栏中

选中驱动程序所要运行的系统环境,可惜,不支持XP系统平台!!!
按F7快捷键编译连接即可生成我们想要的.sys文件了。另编译Vista以上版本系统平台驱动文件时makefile文件是可有可无的,没有此文件编译器会自动为我们加上相关定义!(Starting
with the Windows Driver Kit (WDK) for Windows Vista, it is no longer required for the Makefile file to be in every project. By default, the Build utility includes the Makefile.def if the Makefile file is not found in the project. Any custom tasks that are
required in a project should be moved to Makefile.inc as appropriate.)


驱动文件生成完成,现在开始进行虚拟机连接设置:

点击菜单选项 DRIVERTestConfigure
Computers

点击“Add New Computer”

在Computer name:中输入你真实的计算机的名字(不是虚拟机中计算机的名字)
下边三个选项选择最后一项”Manually configure
debuggers and...”,手动配置调试

按上图配置即可,Connection Type选为Serial
(串口)
(波特率)Baud Rate 115200 
(管道)Pipe勾选
(重连接)Reconnect勾选
(管道名)Pipe name  \\.\pipe\com_1
这几个选项根据你虚拟机设置来设置
最后点击完成。

打开虚拟机进入系统后(调试模式)(按我以前的步骤是先在虚拟机中运行驱动,然后附加下断点,会导致2012卡死掉,后来摸索发现在没有加载驱动之前就让2012把系统断一下,这样就连接成功了!驱动运行之前设置断点也会成功!)

再在vs2012中选择菜单栏中的  工具附加到进程


传输:Windows Kernel Mode Debugger
限定符:就是我们添加的计算机名

点击附加 2012会自动进入调试状态,
此时显示Waiting to reconnect...;

 把虚拟机断下,这时在源代码中就可以下断点了!完成断点设置输入g命令或F5,让虚拟机走起。当你运行虚拟机中驱动程序到相应代码位置就是会被2012断下。(经过这几天摸索,2012不用关闭重新打开也是可以地!)

把我们生成的hello.sys

文件放到虚拟机中,用INSTDRV工具安装启动





在2012中驱动项目的符号文件是不用特殊指定的,编译器会自动找到符号文件所在位置。

系统符号我知道的其中一个方法是用命令的形式来加载或下载符号文件
如果系统中没有单独安装符号文件,在Debugger Immediate Windows窗口中输入命令
.sympath srv*c:\MyServerSymbols*http://msdl.microsoft.com/download/symbols
*c:\MyServerSymbols*之间的路径就是你要保存的符号文件的路径

如果你已经下载并单独安装了符号文件可以用如下形式的命令来指定:
.sympath c:\MyRegularSymbols 回车后显示
 
我们再   .reaload一下(重新加载符号文件)

哈哈,这里输入命令还有智能提示哦!

部分符号文件没有找到也属于正常情况,指定目录下没有这些驱动的符号文件!可以指定到官方网站去下载符号文件
.sympath srv*c:\MyServerSymbols*[url=http://msdl.microsoft.com/download/symbols]http://msdl.microsoft.com/download/symbols

以上设置均参考自:Debugging Help.    (WDK8安装后会有相关文档)

目前我电脑的配置是I5-3210M,内存2G自己又加了一根4G,显卡GT630M1G显存!宏基的一款E1-471G。淘宝上买3270,自己又换了个二手64G固态硬盘用来做系统盘。总共加起也就3600左右吧!试验了下,用固态比直接用机械硬盘速度真是要快很多!!!  笔记本64位Win7;虚拟机32位Win7分配了一处理器,1G内存;
用2012调表示没压力 CPU利用率36%,内存2.7G使用中,1.1G可用[/SIZE]

vs2012(或2013)与虚拟机连调试的更多相关文章

  1. VS2012、2013使用Mysql数据库创建EF的AOD.NET实体模型

    VS2012.2013使用Mysql数据库创建EF的AOD.NET实体模型: 1.关闭VS,首先安装mysql-connector-net-6.8.3.(安装后EF创建实体模型时就可以找到Mysql的 ...

  2. Visual Studio 2013 如何在停止调试Web程序后阻止IIS Express关闭

    vs2013 调试项目的时候,当停止调试的时候,端口就被断了.之前以为是IIS那边的控制问题,但是其他并行的项目运行都没有出现这种情况. 最初也没在意,直到现在实在忍受不了了,每次重开也太烦了.就去各 ...

  3. 在VS2012/2013上编辑和调试Quick-cocos2d-x的Lua代码

    类似教程链接:http://www.cocoachina.com/bbs/read.php?tid=205043 步骤: 一.Quick-cocos2d-x 最新版本或要打算使用的版本 (http:/ ...

  4. 使用VS插件在VS2012/2013上编辑和调试Quick-Cocos2d-x的Lua代码

    vs 也能够做lua 开发,并进行代码调试 依照以下文档,调试没问题. 參考文档: 点击打开链接

  5. vs2012使用64位IIS EXPRESS调试

    使用Visual Studio 2012开发网站或web应用程序时,可以使用两种web server.自带的development server和IIS EXPRESS.development ser ...

  6. Visual Studio 2013 IIS Explorer 停止调试继续访问站点

    升级到2013后,在做调试的时候默认调试服务器是 IIS Explorer,当终止调试的时候再次访问调试站点时已经无法访问了.此时想预览一下感觉很不方便. 为了能够预览可以参考一下配置: Tools  ...

  7. hotspot虚拟机的调试

    3这篇文章,怎么说呢.是踩了很多坑得出来了,也是在自己快要崩溃的时候得出来了的. 连续踩了差不多10来个小时的坑,还好是出来了. 这篇文章是调试虚拟机的,其实网上也能找到一些文章,但是每个人的环境不一 ...

  8. 20175215 2018-2019-2 第一周Linux虚拟机环境调试及java程序调试学习总结

    一.Linux虚拟机的java环境调试 之前直接在终端中使用export直接配置java的运行环境,导致每次终端被重启的时候都要重新配置java的运行环境,直到看到老师的博客Intellj IDEA ...

  9. centos 虚拟机安装调试

    service network restart reboot yum update -y cd /etccd sysconfigcd network-scripts[root@u0mo5 networ ...

随机推荐

  1. Python 开篇

    一.Linux基础 - 计算机以及日后我们开发的程序防止的服务器的简单操作 二.Python开发 http://www.cnblogs.com/wupeiqi/articles/5433893.htm ...

  2. 前端学习(20)~css布局(十三)

    常见的布局属性 (1)display 确定元素的显示类型: block:块级元素. inline:行内元素. inline-block:对外的表现是行内元素(不会独占一行),对内的表现是块级元素(可以 ...

  3. 2-10 就业课(2.0)-oozie:9、oozie与hue的整合,以及整合后执行MR任务

    5.hue整合oozie 第一步:停止oozie与hue的进程 通过命令停止oozie与hue的进程,准备修改oozie与hue的配置文件 第二步:修改oozie的配置文件(老版本的bug,新版本已经 ...

  4. 面试题之xml解析?

    题目是:用java程序将xml中的数据保存到实体对象中,如何实现? xml如下: <?xml version="1.0" encoding="UTF-8" ...

  5. Linux-kernel-timeline

    Linux kernel Protocol Location HTTP https://www.kernel.org/pub/ GIT https://git.kernel.org/ RSYNC rs ...

  6. Java 定时循环运行程序

    Timer 和 ScheduledExecutorSeruvce 都能执行定时的循环任务,有函数 scheduleAtFixedRate.但是,如果任务运行时间较长,超过了一个周期时长,下一个任务就会 ...

  7. xaml与CSS中的Margin顺序不同

    XAML中  Margin:左 上 右 下 CSS中      Margin:上 右 下 左

  8. [题解] LuoguP2257 YY的GCD

    传送门 给\(n,m\),让你求 \[ \sum\limits_{i=1}^n \sum\limits_{j=1}^m [\gcd(i,j) \in prime] \] 有\(T\)组询问\((T \ ...

  9. 【剑指Offer】面试题32 - III. 从上到下打印二叉树 III

    题目 请实现一个函数按照之字形顺序打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右到左的顺序打印,第三行再按照从左到右的顺序打印,其他行以此类推. 例如: 给定二叉树: [3,9,20,nu ...

  10. python——字符输出ASCII码

    总是忘记事,赶紧记下来,Python字符转成ASCII需要用到一个函数ord # 用户输入字符 ch = input("请输入一个字符: ") # 用户输入ASCII码,并将输入的 ...