﻿<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>学习日记 &#187; sys</title>
	<atom:link href="https://www.softwareace.cn/?cat=112&#038;feed=rss2" rel="self" type="application/rss+xml" />
	<link>https://www.softwareace.cn</link>
	<description>时刻想着为自己的产品多做一些对他好的事情</description>
	<lastBuildDate>Fri, 20 Mar 2026 06:58:28 +0000</lastBuildDate>
	<language>zh-CN</language>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>
	
	<item>
		<title>VS2010 + WinDDK 搭建驱动开发环境</title>
		<link>https://www.softwareace.cn/?p=1522</link>
		<comments>https://www.softwareace.cn/?p=1522#comments</comments>
		<pubDate>Wed, 21 Sep 2016 08:29:06 +0000</pubDate>
		<dc:creator><![CDATA[admin]]></dc:creator>
				<category><![CDATA[sys]]></category>

		<guid isPermaLink="false">http://www.softwareace.cn/?p=1522</guid>
		<description><![CDATA[因工作需要，需要研究一下Windows驱动开发。我们知道，编译驱动程序主要是通过两种方案：第一种是通过WinD [&#8230;]]]></description>
				<content:encoded><![CDATA[<div id="cnblogs_post_body" style="color: #000000;">
<p>因工作需要，需要研究一下Windows驱动开发。我们知道，编译驱动程序主要是通过两种方案：第一种是通过WinDDK提供的build命令+source文件进行编译；另外一种是通过VC的IDE进行编译。</p>
<p>微软推荐开发者使用第一种，即利用WinDDK提供的编译命令进行编译，但是，本质上，两种方法到最后都是调用cl.exe和link.exe进行编译，区别只是两种方法设置参数、环境变量的方式不同而已。</p>
<h1>环境准备</h1>
<h2>VS2010</h2>
<p>这个能够在msdn下载中心下载到试用版，当然，也可以通过其他途径，你懂的。</p>
<h2>WinDDK</h2>
<p><a style="color: navy;" title="http://www.microsoft.com/en-us/download/confirmation.aspx?id=11800" href="http://www.microsoft.com/en-us/download/confirmation.aspx?id=11800">http://www.microsoft.com/en-us/download/confirmation.aspx?id=11800</a>，该链接能下到WDK所需的所有东西，包括相关工具，示例代码，文档等。</p>
<h1>环境配置</h1>
<h2>新建Win32项目</h2>
<p><a style="color: navy;" href="http://images.cnitblog.com/blog/265005/201403/261452417804765.png"><img title="image" src="http://images.cnitblog.com/blog/265005/201403/261525192186225.png" alt="image" width="959" height="664" border="0" /></a></p>
<h2>将示例代码拷贝到D:\HelloDriver\HelloDriver目录，并将其添加到项目中</h2>
<p><a style="color: navy;" href="http://images.cnitblog.com/blog/265005/201403/261525208435695.png"><img title="image" src="http://images.cnitblog.com/blog/265005/201403/261525218117766.png" alt="image" width="451" height="152" border="0" /></a></p>
<p><a style="color: navy;" href="http://images.cnitblog.com/blog/265005/201403/261525231242564.png"><img title="image" src="http://images.cnitblog.com/blog/265005/201403/261525241083163.png" alt="image" width="243" height="176" border="0" /></a></p>
<h2>配置属性-常规</h2>
<p><a style="color: navy;" href="http://images.cnitblog.com/blog/265005/201403/261525263587275.png"><img title="image" src="http://images.cnitblog.com/blog/265005/201403/261525279213232.png" alt="image" width="942" height="676" border="0" /></a></p>
<h2>配置属性-C/C++-常规</h2>
<p><a style="color: navy;" href="http://images.cnitblog.com/blog/265005/201403/261525289053831.png"><img title="image" src="http://images.cnitblog.com/blog/265005/201403/261525297656403.png" alt="image" width="940" height="660" border="0" /></a></p>
<h2>配置属性-C/C++-预处理器</h2>
<p><a style="color: navy;" href="http://images.cnitblog.com/blog/265005/201403/261525307497001.png"><img title="image" src="http://images.cnitblog.com/blog/265005/201403/261525316084872.png" alt="image" width="942" height="676" border="0" /></a></p>
<h3>x86 Debug</h3>
<p>WIN32<br />
_CONSOLE<br />
_X86_<br />
_DDK_<br />
_DEBUG<br />
DBG=1</p>
<h3>x86 Release</h3>
<p>WIN32<br />
_CONSOLE<br />
_X86_<br />
_DDK_<br />
_NDEBUG<br />
DBG=0</p>
<h2>配置属性-C/C++-高级</h2>
<p><a style="color: navy;" href="http://images.cnitblog.com/blog/265005/201403/261525327029671.png"><img title="image" src="http://images.cnitblog.com/blog/265005/201403/261525342189642.png" alt="image" width="942" height="676" border="0" /></a></p>
<h2>配置属性-C/C++-代码生成</h2>
<p><a style="color: navy;" href="http://images.cnitblog.com/blog/265005/201403/261614398118480.png"><img title="image" src="http://images.cnitblog.com/blog/265005/201403/261614408583593.png" alt="image" width="942" height="676" border="0" /></a></p>
<h2>配置属性-链接器-常规</h2>
<p><a style="color: navy;" href="http://images.cnitblog.com/blog/265005/201403/261525354992684.png"><img title="image" src="http://images.cnitblog.com/blog/265005/201403/261525373584382.png" alt="image" width="942" height="676" border="0" /></a></p>
<p>我们看到路径是…\WXP\i386，意思就是针对Windows XP系统和i386架构CPU，如果想编译其他系统，或者其他CPU的驱动，修改此路径即可。</p>
<h2>配置属性-链接器-输入</h2>
<p><a style="color: navy;" href="http://images.cnitblog.com/blog/265005/201403/261525382801467.png"><img title="image" src="http://images.cnitblog.com/blog/265005/201403/261525394365482.png" alt="image" width="921" height="653" border="0" /></a></p>
<h2>配置属性-链接器-清单文件</h2>
<p><a style="color: navy;" href="http://images.cnitblog.com/blog/265005/201403/261525403904324.png"><img title="image" src="http://images.cnitblog.com/blog/265005/201403/261525412803950.png" alt="image" width="942" height="676" border="0" /></a></p>
<h2>配置属性-链接器-系统</h2>
<p><a style="color: navy;" href="http://images.cnitblog.com/blog/265005/201403/261525424051507.png"><img title="image" src="http://images.cnitblog.com/blog/265005/201403/261525435615521.png" alt="image" width="942" height="676" border="0" /></a></p>
<h2>配置属性-链接器-高级</h2>
<p><a style="color: navy;" href="http://images.cnitblog.com/blog/265005/201403/261525445466120.png"><img title="image" src="http://images.cnitblog.com/blog/265005/201403/261525456401920.png" alt="image" width="942" height="676" border="0" /></a></p>
</div>
<div class="clear" style="color: #000000;"></div>
]]></content:encoded>
			<wfw:commentRss>https://www.softwareace.cn/?feed=rss2&#038;p=1522</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
