同样由于那环境是很久以前搭建的,自己也有很多记不清楚的地方了,
而且其中还是有很多需要注意的地方的,所以在这里顺便做一个环境搭建的总结,
以后再要用的时候也会很方便的。
WDK 调试环境搭建:
安装 WDK:
自然首先是安装 WDK 了,这个好办,直接到官网上下载,然后安装就 OK 了,
注意的是,在安装中最好是选择安装全部,并且最好是安装在 C 盘下。
设置调试环境:
这个其实也好办,就是使用 WinDbg 来调试虚拟机或者通过串口线可以使用 WinDbg 来调试另外一台 PC 。
其中呢,如果你机器还算好,可以同时跑的起几个 Visual Studio + 虚拟机的话,那就没必要使用 2 台 PC 。
但是如果你机器不咋的的话,像我自己家里的这种几年前的古董,跑个虚拟机就卡的跟什么似的的话,
那最好是准备 2 台 PC ,不然调试的时候会让人抓狂的。还有值得一提的是,在虚拟机中调试的话,
实质上,是虚拟机通过命名管道来虚拟出一个串口,所以其速度和真实的使用两台 PC 通过串口调试是有区别的。
WinDbg 调试虚拟机:
设置虚拟机:
首先在虚拟机中安装 XP ,然后修改该 XP 系统的根目录下的 BOOT.INI 文件
(该文件默认是隐藏的,并且其属性为只读,所以需要先去掉只读属性)。
比如本来的 INI 文件为:
![imagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/8b898381-6986-4908-9e6d-9d7c6ee0c0e7.png)
那么需要将该 INI 文件修改为如下:
![imageimagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/24a468d7-fe2b-4c1b-86c5-c045a3ac6724.png)
上面的最后加的这一句表示我们加载的 Windows 内核的调试端口指定为 Com4 ,并且设置波特率为 115200 。
在这里设置好 BOOT.INI 文件后,我们便需要设置虚拟机中的 XP 了,
实际上是虚拟机通过命名管道来像我们的 PC 虚拟出一个串口。
具体设置详见插图:
![1imageimagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/2ccbbb5b-7f96-4175-b0ab-2935e51a4648.png)
![21imageimagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/4fd42caa-5aba-4416-bdb2-d76dff5d0613.png)
(注意下面的 com_4 ,这个 com_4 和我们在 BOOT.INI 文件中的设置是相对应的)
![321imageimagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/51cee0df-11be-4d52-8f20-bd5ec6110ef7.png)
设置 WinDbg:
再提一点,可以通过设置 WinDbg 的启动参数来确保 WinDbg 能够调试虚拟机。
通过设置如下的启动参数可以使得 WinDbg 调试串口 \\.\pipe\com_4 。
C:\WinDDK\Debuggers\windbg.exe -b -k com:port=\\.\pipe\com_4,baud=115200,pipe
![image321imageimagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/3946b5d3-0c78-40aa-9797-a9896fce2a16.png)
WinDbg 调试另外一台 PC:
要使用 WinDbg 来调试另外一台 PC 的话,至少得准备 2 台 PC 吧,呵呵。
在这里将装有 WDK 和 WinDbg 成为主机,而将另外一台 PC 称之为客户机吧。
设置客户机: 同样是修改 BOOT.INI 文件,这一步和上面的是一模一样的。
比如将 BOOT.INI 文件中的调试端口设置为使用 com_4 进行调试。
设置 WinDbg:
C:\WinDDK\Debuggers\windbg.exe -b -k com:port=\\.\com1,baud=115200
![imageimage321imageimagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/e2e1135d-0d7d-4316-878c-90e853a7db82.png)
SVN 环境搭建:
下载:
分别从 www.visualsvn.com 和 http://tortoisesvn.net 下载 SVN 服务端程序和客户端程序。
![clip_image001imageimage321imageimagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/ffaf4c96-83f7-4765-9785-027a7338a257.png)
安装 SVN 服务端程序 VisualSVN Server:
安装 SVN Server 截图一:
![clip_image002clip_image001imageimage321imageimagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/b89e3973-54f5-4614-a7db-d3fa143ce604.png)
安装 SVN Server 截图二:
![clip_image003clip_image002clip_image001imageimage321imageimagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/0e1eef19-fb6d-48b0-9964-1ee1cf233ddf.png)
安装 SVN Server 截图三:
![clip_image004clip_image003clip_image002clip_image001imageimage321imageimagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/d8534e5e-f702-447d-baff-9e914088769c.png)
安装完毕 VisualSVN Server 后就需要创建仓库了。
![clip_image005clip_image004clip_image003clip_image002clip_image001imageimage321imageimagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/debd311e-d6e1-46cb-829f-bdae441a9af6.png)
创建名为 KeyBoard 的仓库,注意勾选下面的复选框以及注意 URL 为 http://XiaoZhen-PC/svn/KeyBoard
![clip_image006clip_image005clip_image004clip_image003clip_image002clip_image001imageimage321imageimagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/16fb41f9-9e34-42ac-8c03-88babaefff02.png)
然后再创建一个用户
![clip_image007clip_image006clip_image005clip_image004clip_image003clip_image002clip_image001imageimage321imageimagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/c9888013-721b-4678-b1f5-fb0aed33beb7.png)
![clip_image008clip_image007clip_image006clip_image005clip_image004clip_image003clip_image002clip_image001imageimage321imageimagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/ec04e09f-6a4b-43f0-ba30-e860d9f6ca77.png)
安装 SVN 客户端程序 TortoiseSVN:
安装时所有选项选择默认即可,安装后需要重启机器
![clip_image009clip_image008clip_image007clip_image006clip_image005clip_image004clip_image003clip_image002clip_image001imageimage321imageimagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/21993014-f6ca-49ad-a0ef-63a2a9686fca.png)
工程使用 SVN 示例:
安装完 TortoiseSVN 后,我们就可以创建一个工程了,这里使用的工程为 KeyBoard 工程。
在我的桌面上有一个叫做 KeyBoard 的工程,对此,需要将该工程导入到 SVN 服务器上。
![clip_image010clip_image009clip_image008clip_image007clip_image006clip_image005clip_image004clip_image003clip_image002clip_image001imageimage321imageimagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/665b284b-3b66-405c-abff-fe31e8c893e5.png)
![clip_image011clip_image010clip_image009clip_image008clip_image007clip_image006clip_image005clip_image004clip_image003clip_image002clip_image001imageimage321imageimagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/caec9252-984d-448a-b16f-e5b663af6612.png)
![clip_image013clip_image011clip_image010clip_image009clip_image008clip_image007clip_image006clip_image005clip_image004clip_image003clip_image002clip_image001imageimage321imageimagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/eca81c77-7db5-4f0a-9043-abadbc3a5bcc.jpg)
上传工程到服务器上完成
![clip_image015clip_image013clip_image011clip_image010clip_image009clip_image008clip_image007clip_image006clip_image005clip_image004clip_image003clip_image002clip_image001imageimage321imageimagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/e7fa7a79-ac74-4228-b511-828bddd1b287.jpg)
由于工程已经上传到了 SVN 服务器上,所以本地桌面上的 KeyBoard 工程是可以删除了的,在此将其删除。
然后我们到另外一台 PC 上实现将服务器上的 KeyBoard 工程签出或者签入。
首先需要在另外一台电脑 B 上面安装好 SVN 客户端程序 TortoiseSVN。
然后在电脑 B 的桌面或者其他位置创建一个文件夹,这里取名叫做 KeyBoard 。
![clip_image016clip_image015clip_image013clip_image011clip_image010clip_image009clip_image008clip_image007clip_image006clip_image005clip_image004clip_image003clip_image002clip_image001imageimage321imageimagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/5eafdbbe-f9b4-4c1f-bfd8-b83a97c0f47b.png)
![clip_image017clip_image016clip_image015clip_image013clip_image011clip_image010clip_image009clip_image008clip_image007clip_image006clip_image005clip_image004clip_image003clip_image002clip_image001imageimage321imageimagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/6db9040e-6076-41e1-98e0-419fdbc587a6.png)
![clip_image018clip_image017clip_image016clip_image015clip_image013clip_image011clip_image010clip_image009clip_image008clip_image007clip_image006clip_image005clip_image004clip_image003clip_image002clip_image001imageimage321imageimagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/185d44d3-8b7a-4c28-ad42-b199587380c2.png)
![clip_image020clip_image018clip_image017clip_image016clip_image015clip_image013clip_image011clip_image010clip_image009clip_image008clip_image007clip_image006clip_image005clip_image004clip_image003clip_image002clip_image001imageimage321imageimagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/942ffdd8-0178-4c82-94a8-fc5110b09c44.jpg)
![clip_image022clip_image020clip_image018clip_image017clip_image016clip_image015clip_image013clip_image011clip_image010clip_image009clip_image008clip_image007clip_image006clip_image005clip_image004clip_image003clip_image002clip_image001imageimage321imageimagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/58d01057-f453-475e-8d8d-1282d3d64387.jpg)
![clip_image024clip_image022clip_image020clip_image018clip_image017clip_image016clip_image015clip_image013clip_image011clip_image010clip_image009clip_image008clip_image007clip_image006clip_image005clip_image004clip_image003clip_image002clip_image001imageimage321imageimagesvn搭建,驱动开发 - WDK 调试及 SVN 环境搭建](/Files/20115/14742fc3-82f6-4088-871a-884dc5bc48ca.jpg)
总结:
上面呢是介绍了对于使用 WDK 来调试虚拟机或者调试另外一台 PC 的一些设置,
同时也介绍了在驱动开发中使用 SVN 来进行开发时,SVN 的环境搭配和基本使用,
下一篇文章估计还是介绍环境搭配类的,因为要想在 Visual Studio 中开发驱动程序还是得设置蛮多东西的。
版权所有,欢迎转载,但转载请注明: 转载自 Zachary.XiaoZhen - 梦想的天空
最新评论