<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh">
	<id>https://arolstar52-zhtest.hf.space/index.php?action=history&amp;feed=atom&amp;title=Windows_Driver_Frameworks</id>
	<title>Windows Driver Frameworks - 版本历史</title>
	<link rel="self" type="application/atom+xml" href="https://arolstar52-zhtest.hf.space/index.php?action=history&amp;feed=atom&amp;title=Windows_Driver_Frameworks"/>
	<link rel="alternate" type="text/html" href="https://arolstar52-zhtest.hf.space/index.php?title=Windows_Driver_Frameworks&amp;action=history"/>
	<updated>2026-06-29T05:15:33Z</updated>
	<subtitle>在这个wiki上该页的修订历史</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://arolstar52-zhtest.hf.space/index.php?title=Windows_Driver_Frameworks&amp;diff=183268&amp;oldid=prev</id>
		<title>~2025-33547-29 来自 2025年11月14日 (五) 12:15</title>
		<link rel="alternate" type="text/html" href="https://arolstar52-zhtest.hf.space/index.php?title=Windows_Driver_Frameworks&amp;diff=183268&amp;oldid=prev"/>
		<updated>2025-11-14T12:15:30Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{howto|time=2014-10-18T08:16:56+00:00}}&lt;br /&gt;
{{noteTA&lt;br /&gt;
|G1=IT&lt;br /&gt;
|1=zh-tw:核心;zh-hk:內核;zh-cn:内核;&lt;br /&gt;
|2=zh-tw:架構;zh-hk:架構;zh-cn:框架;&lt;br /&gt;
|3=zh-tw:驅動程式架構;zh-hk:驅動程式架構;zh-cn:驱动程序框架;&lt;br /&gt;
}}&lt;br /&gt;
{{Infobox software&lt;br /&gt;
| name                   = Windows Driver Frameworks（WDF）&lt;br /&gt;
| logo                   = &lt;br /&gt;
| screenshot             = &lt;br /&gt;
| caption                = &lt;br /&gt;
| other_names            = Windows Driver Foundation&lt;br /&gt;
| author                 = &lt;br /&gt;
| developer              = [[微軟]]&lt;br /&gt;
| released               = &lt;br /&gt;
| latest release date    = {{Start date and age|2019|03|24|df=yes}} &lt;br /&gt;
| operating system       = [[Microsoft Windows]]&lt;br /&gt;
| platform               = &lt;br /&gt;
| genre                  = [[軟體開發工具]]、[[API]]&lt;br /&gt;
| license                = [[MIT授權條款]]&amp;lt;ref name=repo&amp;gt;{{cite web |title=Windows Driver Frameworks |url=https://github.com/Microsoft/Windows-Driver-Frameworks |website=[[GitHub]] |publisher=[[Microsoft]] |access-date=2017-02-15}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Windows Driver Frameworks&amp;#039;&amp;#039;&amp;#039;（Windows驱动程序框架，簡稱&amp;#039;&amp;#039;&amp;#039;WDF&amp;#039;&amp;#039;&amp;#039;，前称&amp;#039;&amp;#039;&amp;#039;Windows Driver Foundation&amp;#039;&amp;#039;&amp;#039;），是微軟公司所提供的驅動程式開發技術的集合，包括Kernel-Mode Driver Framework（核心模式驅動程式架構，[[KMDF]]）、User-Mode Driver Framework（使用者模式驅動程式架構，[[UMDF]]）以及PREfast plug-in for Drivers（[[PREFast for Drivers|PFD]]），目的是要改善目前[[Microsoft Windows|Windows]]平台的驅動程式品質，可支援[[Windows 2000]]以及更新的作業系統之最新驅動程式架構。WDF架構提供了非同步輸入輸出、分層式驅動程式、隨插即用（PNP）、電源管理（Power Management），以及[[Windows管理規範]]（Windows Management Instrumentation，WMI）等功能。&lt;br /&gt;
&lt;br /&gt;
== User-Mode Driver Framework ==&lt;br /&gt;
{{main|UMDF}}&lt;br /&gt;
&lt;br /&gt;
用户模式驱动程序框架（User-Mode Driver Framework）是内核模式驱动程序框架（Kernel-Mode Driver Framework）的子集合，提供即插即用（PNP）、电源管理（Power Manager）、异步输入输出等功能。&lt;br /&gt;
&lt;br /&gt;
== Kernel-Mode Driver Framework ==&lt;br /&gt;
{{main|KMDF}}&lt;br /&gt;
&lt;br /&gt;
Kernel-Mode Driver Framework（核心模式驅動程式架構，簡稱KMDF），是美國微軟公司推出的視窗驅動程式基礎（Windows Driver Foundation）之一，建構Windows XP與Windows Server 2003的核心模式（Kernel-Mode）驅動程式所需的基本功能，包括對隨插即用（PNP）、電源管理（Power Manager）、I/O佇列、直接記憶體存取（DMA）、Windows Management Instrumentation（WMI）和同步處理等的完整支援。KMDF的設計並不能用來取代WDM，它提供「Skeletal WDM」（一個骨架）建置來替代WDM；目前，KMDF並不支援匯流排篩選驅動程式（Bus Filter Driver）。&lt;br /&gt;
&lt;br /&gt;
== PREfast ==&lt;br /&gt;
{{main|PREfast}}&lt;br /&gt;
&lt;br /&gt;
PREfast（Prefast.exe）是靜態的原始碼分析工具（static source code analysis tool），可偵測原始程式碼中不易用一般編譯器找到的特定類型錯誤，目前已整合至Visual Studio 2005 Team Suite中，使用時只要設定‘Enable Code Analysis For C/C++’為Yes即可。&lt;br /&gt;
&lt;br /&gt;
=== PREfast的工作 ===&lt;br /&gt;
* 變數未初始化&lt;br /&gt;
&amp;lt;syntaxhighlight lang=cpp&amp;gt;&lt;br /&gt;
 void init() {&lt;br /&gt;
     int a;&lt;br /&gt;
     int b;&lt;br /&gt;
     b = a;&lt;br /&gt;
 }&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
* 運算元優先權的問題&lt;br /&gt;
&amp;lt;syntaxhighlight lang=cpp&amp;gt;&lt;br /&gt;
 void priority() {&lt;br /&gt;
     int a = 1;&lt;br /&gt;
     int b = 1;&lt;br /&gt;
     int c = 1;&lt;br /&gt;
     if(a &amp;amp; b == c)&lt;br /&gt;
        return ;&lt;br /&gt;
 }&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
* 記憶體溢位問題&lt;br /&gt;
&amp;lt;syntaxhighlight lang=cpp&amp;gt;&lt;br /&gt;
 void overrun() {&lt;br /&gt;
      char buf[100];&lt;br /&gt;
     char buf2[200];&lt;br /&gt;
     int  i = 100;&lt;br /&gt;
 &lt;br /&gt;
     sprintf(buf, &amp;quot;size%d&amp;quot; , i);&lt;br /&gt;
     strcpy(buf, buf2);&lt;br /&gt;
 }&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Kernel-Mode Code Signing ==&lt;br /&gt;
微軟提供測試時期的類別簽章認證，可以讓使用者產生所需要的CER檔與CAT檔。&lt;br /&gt;
&lt;br /&gt;
首先，使用文字編輯器建立一個 .cdf 檔案，包含要加入目錄的檔案及其屬性的清單。&lt;br /&gt;
&amp;lt;syntaxhighlight lang=ini&amp;gt;&lt;br /&gt;
 [CatalogHeader]&lt;br /&gt;
 Name=Good.cat&lt;br /&gt;
 PublicVersion=0x0000001&lt;br /&gt;
 EncodingType=0x00010001&lt;br /&gt;
 CATATTR1=0x10010001:OSAttr:2:6.0&lt;br /&gt;
 &lt;br /&gt;
 [CatalogFiles]&lt;br /&gt;
 ...&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*產生一個cer檔&lt;br /&gt;
&amp;lt;syntaxhighlight lang=dos&amp;gt;&lt;br /&gt;
 makecert -pe -ss PrivateCertStore -n CN=Contoso.com(Test) ContosoTest.cer&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;makecert.exe&amp;lt;/code&amp;gt; 可制作cer格式的证书，即[[X.509]]证书。&lt;br /&gt;
*產生一個cat檔&lt;br /&gt;
&amp;lt;syntaxhighlight lang=dos&amp;gt;&lt;br /&gt;
 MakeCat -v Good.cdf&lt;br /&gt;
 Signability.exe /auto /cat /driver:package_directory /os:512&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*產生cat檔簽證&lt;br /&gt;
&amp;lt;syntaxhighlight lang=dos&amp;gt;&lt;br /&gt;
 SignTool sign /v /ac CrossCertificateFile /s SPCCertificateStore /n SPCSubjectName /t&lt;br /&gt;
 http://timestamp.verisign.com/scripts/timestamp.dll Good.cat&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*安裝簽證過的cat檔&lt;br /&gt;
使用&amp;lt;code&amp;gt;CryptCATAdminAddCatalog&amp;lt;/code&amp;gt; API&lt;br /&gt;
*驗證&lt;br /&gt;
&amp;lt;syntaxhighlight lang=dos&amp;gt;&lt;br /&gt;
 Signtool verify /kp /c tstamd64.cat toaster.sys&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 相關條目 ==&lt;br /&gt;
* [[Windows Driver Model]]&lt;br /&gt;
* [[Windows驅動程式套件]]（WDK）&lt;br /&gt;
* [[KMDF]]&lt;br /&gt;
* [[UMDF]]&lt;br /&gt;
&lt;br /&gt;
== 參考資料 ==&lt;br /&gt;
{{reflist}}&lt;br /&gt;
&lt;br /&gt;
== 外部連結 ==&lt;br /&gt;
* [http://www.microsoft.com/taiwan/whdc/winlogo/drvsign/kmcs_walkthrough.mspx Kernel-Mode Code Signing Walkthrough] {{Wayback|url=http://www.microsoft.com/taiwan/whdc/winlogo/drvsign/kmcs_walkthrough.mspx |date=20080321062106 }}&lt;br /&gt;
* [https://web.archive.org/web/20080206174045/http://www.microsoft.com/whdc/driver/wdf/default.mspx Windows Driver Foundation Homepage]&lt;br /&gt;
* [https://web.archive.org/web/20061205134139/http://www.microsoft.com/whdc/devtools/wdk/default.mspx Windows Driver Kit]&lt;br /&gt;
* [https://web.archive.org/web/20070730233021/http://www.osronline.com/] OSR Online, including many articles about WDF, KMDF, and Windows driver development.&lt;br /&gt;
* [https://web.archive.org/web/20091021174351/http://www.wd-3.com/archive/FrameworkIntro.htm Introducing Windows Driver Framework]，written by well-known Windows driver developer, Walter Oney.&lt;br /&gt;
*[https://web.archive.org/web/20060422192541/http://www.codeproject.com/system/wdf_kmdf_basic.asp Building and deploying a basic WDF Kernel Mode Driver]，CodeProject&lt;br /&gt;
*[https://web.archive.org/web/20071014004348/http://www.codeproject.com/system/kmdf_osr_usb_fx2.asp Developing a WDF USB Kernel Mode Driver for the OSR USB FX2]，CodeProject&lt;br /&gt;
&lt;br /&gt;
{{Microsoft APIs}}&lt;br /&gt;
{{微軟開發工具}}&lt;br /&gt;
&lt;br /&gt;
[[Category:微軟API|W]]&lt;br /&gt;
[[Category:驱动程序|W]]&lt;/div&gt;</summary>
		<author><name>~2025-33547-29</name></author>
	</entry>
</feed>