⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vxd-c6.htm

📁 汇编语言编写的虚拟驱动程序
💻 HTM
📖 第 1 页 / 共 5 页
字号:

<p class=MsoPlainText style='margin-left:21.0pt;text-indent:-21.0pt;mso-list:
l1 level1 lfo4;tab-stops:list 21.0pt'><![if !supportLists]><span lang=EN-US
style='font-size:10.0pt;mso-bidi-font-size:10.5pt;font-family:Wingdings'>l<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]><b><span lang=EN-US style='font-size:10.0pt;mso-bidi-font-size:
10.5pt;font-family:Arial;color:#66FFFF'>nInBufferSize</span></b><span
style='mso-ascii-font-family:Arial;mso-hansi-font-family:Arial'>是由</span><b><span
lang=EN-US style='font-size:10.0pt;mso-bidi-font-size:10.5pt;font-family:Arial;
color:#66FFFF'>lpInBuffer</span></b><span style='mso-ascii-font-family:Arial;
mso-hansi-font-family:Arial'>所指向的缓冲区的地址的大小</span><span style='font-size:10.0pt;
mso-bidi-font-size:10.5pt;mso-ascii-font-family:Arial;mso-hansi-font-family:
Arial'>(</span><span lang=EN-US style='font-size:10.0pt;mso-bidi-font-size:
10.5pt;font-family:Arial'>byte</span><span style='font-size:10.0pt;mso-bidi-font-size:
10.5pt;mso-ascii-font-family:Arial;mso-hansi-font-family:Arial'>)。</span><span
lang=EN-US style='font-size:10.0pt;mso-bidi-font-size:10.5pt;font-family:Arial'><o:p></o:p></span></p>

<p class=MsoPlainText style='margin-left:21.0pt;text-indent:-21.0pt;mso-list:
l1 level1 lfo4;tab-stops:list 21.0pt'><![if !supportLists]><span lang=EN-US
style='font-size:10.0pt;mso-bidi-font-size:10.5pt;font-family:Wingdings'>l<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]><b><span lang=EN-US style='font-size:10.0pt;mso-bidi-font-size:
10.5pt;font-family:Arial;color:#66FFFF'>lpOutBuffer</span></b><span
style='mso-ascii-font-family:Arial;mso-hansi-font-family:Arial'>是</span><span
lang=EN-US style='font-family:Arial'>VxD</span><span style='mso-ascii-font-family:
Arial;mso-hansi-font-family:Arial'>程序在操作成功之后要将输出数据输出到的缓冲区。如果这个操作没有任何返回值,这个值可以为</span><span
lang=EN-US style='font-size:10.0pt;mso-bidi-font-size:10.5pt;font-family:Arial;
color:#FFFF99'>NULL</span><span style='font-size:10.0pt;mso-bidi-font-size:
10.5pt;mso-ascii-font-family:Arial;mso-hansi-font-family:Arial'>。</span><span
lang=EN-US style='font-size:10.0pt;mso-bidi-font-size:10.5pt;font-family:Arial'><o:p></o:p></span></p>

<p class=MsoPlainText style='margin-left:21.0pt;text-indent:-21.0pt;mso-list:
l1 level1 lfo4;tab-stops:list 21.0pt'><![if !supportLists]><span lang=EN-US
style='font-family:Wingdings'>l<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]><b><span lang=EN-US style='font-size:10.0pt;mso-bidi-font-size:
10.5pt;font-family:Arial;color:#66FFFF'>nOutBufferSize</span></b><span
style='mso-ascii-font-family:Arial;mso-hansi-font-family:Arial'>是</span><b><span
lang=EN-US style='font-size:10.0pt;mso-bidi-font-size:10.5pt;font-family:Arial;
color:#66FFFF'>lpOutBuffer</span></b><span style='mso-ascii-font-family:Arial;
mso-hansi-font-family:Arial'>所指向的缓冲区的大小</span><span style='font-size:10.0pt;
mso-bidi-font-size:10.5pt;mso-ascii-font-family:Arial;mso-hansi-font-family:
Arial'>(</span><span lang=EN-US style='font-size:10.0pt;mso-bidi-font-size:
10.5pt;font-family:Arial'>byte</span><span style='font-size:10.0pt;mso-bidi-font-size:
10.5pt;mso-ascii-font-family:Arial;mso-hansi-font-family:Arial'>)。</span></p>

<p class=MsoPlainText style='margin-left:21.0pt;text-indent:-21.0pt;mso-list:
l1 level1 lfo4;tab-stops:list 21.0pt'><![if !supportLists]><span lang=EN-US
style='font-family:Wingdings'>l<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]><b><span lang=EN-US style='font-size:10.0pt;mso-bidi-font-size:
10.5pt;font-family:Arial;color:#66FFFF'>lpBytesReturned</span></b>是一个<span
lang=EN-US>dword型变量的地址。这个变量用来接收VxD在</span><b><span lang=EN-US style='font-family:
Arial;color:#66FFFF'>lpOutBuffer</span></b>中写入数据的大小。</p>

<p class=MsoPlainText style='margin-left:21.0pt;text-indent:-21.0pt;mso-list:
l1 level1 lfo4;tab-stops:list 21.0pt'><![if !supportLists]><span lang=EN-US
style='font-size:10.0pt;mso-bidi-font-size:10.5pt;font-family:Wingdings'>l<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]><span style='mso-ascii-font-family:Arial;mso-hansi-font-family:
Arial'>如果你想要把操作设成异步的,</span><b><span lang=EN-US style='font-family:Arial;
color:#66FFFF'>l</span></b><b><span lang=EN-US style='font-size:10.0pt;
mso-bidi-font-size:10.5pt;font-family:Arial;color:#66FFFF'>pOverlapped</span></b><span
style='mso-ascii-font-family:Arial;mso-hansi-font-family:Arial'>是一个</span><span
lang=EN-US style='font-family:Arial'>OVERLAPPED</span><span style='mso-ascii-font-family:
Arial;mso-hansi-font-family:Arial'>结构的指针。如果你要一直等直到操作完成,这个值为</span><span
lang=EN-US style='font-size:10.0pt;mso-bidi-font-size:10.5pt;font-family:Arial'>NULL</span><span
style='font-size:10.0pt;mso-bidi-font-size:10.5pt;mso-ascii-font-family:Arial;
mso-hansi-font-family:Arial'>。</span><span lang=EN-US style='font-size:10.0pt;
mso-bidi-font-size:10.5pt;font-family:Arial'><o:p></o:p></span></p>

<h3><span style='font-family:宋体;mso-ascii-font-family:"Times New Roman"'>在</span><span
lang=EN-US>VxD</span><span style='font-family:宋体;mso-ascii-font-family:"Times New Roman"'>方面:</span></h3>

<p class=MsoPlainText><span lang=EN-US>VxD程序</span><span style='color:#FFFF99'>必须</span>处理<span
lang=EN-US style='color:#FFFF99'>w32_deviceIoControl</span>消息。当<span
lang=EN-US>VxD收到w32_deviceIoControl消息,它的寄存器是如下值:</span></p>

<p class=MsoPlainText style='margin-left:21.0pt;text-indent:-21.0pt;mso-list:
l2 level1 lfo6;tab-stops:list 21.0pt'><![if !supportLists]><span lang=EN-US
style='font-family:Wingdings'>l<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]><span lang=EN-US style='color:#FFFF99'>ebx</span><span
lang=EN-US><span style='mso-tab-count:1'> </span>是VM的句柄。</span></p>

<p class=MsoPlainText style='margin-left:21.0pt;text-indent:-21.0pt;mso-list:
l2 level1 lfo6;tab-stops:list 21.0pt'><![if !supportLists]><span lang=EN-US
style='font-family:Wingdings'>l<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]><span lang=EN-US style='color:#FFFF99'>esi</span><span
lang=EN-US> 是指向</span><b><span lang=EN-US style='color:#66FFFF'>DIOCParams</span></b>结构的指针。<b><span
lang=EN-US style='color:#FFFF99'>DIOCParams</span></b>包含了从<span lang=EN-US>win32程序传送的信息。</span></p>

<p class=MsoPlainText><span lang=EN-US style='color:#FFFF99'>DIOCParams</span>是按照如下定义的:</p>

<p class=MsoPlainText><b><span lang=EN-US style='font-family:黑体'>DIOCParams</span></b><span
lang=EN-US> </span><span lang=EN-US style='color:#FFCC33'>STRUC</span></p>

<p class=MsoPlainText><span lang=EN-US><span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp; </span></span><span lang=EN-US style='color:#FFFF99'>Internal1</span><span
lang=EN-US><span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><b><span
lang=EN-US style='font-size:10.0pt;mso-bidi-font-size:10.5pt;font-family:黑体'>DD
? </span></b></p>

<p class=MsoPlainText><span lang=EN-US><span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp; </span></span><span lang=EN-US style='color:#FFFF99'>VMHandle</span><span
lang=EN-US><span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><b><span
lang=EN-US style='font-size:10.0pt;mso-bidi-font-size:10.5pt;font-family:黑体'>DD
? <o:p></o:p></span></b></p>

<p class=MsoPlainText><span lang=EN-US><span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp; </span></span><span lang=EN-US style='color:#FFFF99'>Internal2</span><span
lang=EN-US><span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><b><span
lang=EN-US style='font-size:10.0pt;mso-bidi-font-size:10.5pt;font-family:黑体'>DD
? </span></b></p>

<p class=MsoPlainText><span lang=EN-US><span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp; </span></span><span lang=EN-US style='color:#FFFF99'>dwIoControlCode</span><span
lang=EN-US><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span></span><b><span
lang=EN-US style='font-size:10.0pt;mso-bidi-font-size:10.5pt;font-family:黑体'>DD
?</span></b><span lang=EN-US> </span></p>

<p class=MsoPlainText><span lang=EN-US><span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp; </span></span><span lang=EN-US style='color:#FFFF99'>lpvInBuffer</span><span
lang=EN-US><span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><b><span
lang=EN-US style='font-size:10.0pt;mso-bidi-font-size:10.5pt;font-family:黑体'>DD
? </span></b></p>

<p class=MsoPlainText><span lang=EN-US><span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp; </span></span><span lang=EN-US style='color:#FFFF99'>cbInBuffer</span><span
lang=EN-US><span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><b><span
lang=EN-US style='font-size:10.0pt;mso-bidi-font-size:10.5pt;font-family:黑体'>DD
? </span></b></p>

<p class=MsoPlainText><span lang=EN-US><span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp; </span></span><span lang=EN-US style='color:#FFFF99'>lpvOutBuffer</span><span
lang=EN-US><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><b><span lang=EN-US style='font-size:10.0pt;mso-bidi-font-size:
10.5pt;font-family:黑体'>DD ?</span></b><span lang=EN-US> </span></p>

<p class=MsoPlainText><span lang=EN-US><span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp; </span></span><span lang=EN-US style='color:#FFFF99'>cbOutBuffer</span><span
lang=EN-US><span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><b><span
lang=EN-US style='font-size:10.0pt;mso-bidi-font-size:10.5pt;font-family:黑体'>DD
? </span></b></p>

<p class=MsoPlainText><span lang=EN-US><span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp; </span></span><span lang=EN-US style='color:#FFFF99'>lpcbBytesReturned</span><span
lang=EN-US><span style="mso-spacerun: yes">&nbsp; </span></span><b><span
lang=EN-US style='font-size:10.0pt;mso-bidi-font-size:10.5pt;font-family:黑体'>DD
?</span></b><span lang=EN-US> </span></p>

<p class=MsoPlainText><span lang=EN-US><span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp; </span></span><span lang=EN-US style='color:#FFFF99'>lpoOverlapped</span><span
lang=EN-US><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><b><span lang=EN-US style='font-size:10.0pt;mso-bidi-font-size:
10.5pt;font-family:黑体'>DD ? </span></b></p>

<p class=MsoPlainText><span lang=EN-US><span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp; </span></span><span lang=EN-US style='color:#FFFF99'>hDevice</span><span
lang=EN-US><span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><b><span
lang=EN-US style='font-size:10.0pt;mso-bidi-font-size:10.5pt;font-family:黑体'>DD
?</span></b><span lang=EN-US> </span></p>

<p class=MsoPlainText><span lang=EN-US><span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp; </span></span><span lang=EN-US style='color:#FFFF99'>tagProcess</span><span
lang=EN-US><span style="mso-spacerun:
yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><b><span
lang=EN-US style='font-size:10.0pt;mso-bidi-font-size:10.5pt;font-family:黑体'>DD
?</span></b><span lang=EN-US> </span></p>

<p class=MsoPlainText><b><span lang=EN-US style='font-size:10.0pt;mso-bidi-font-size:
10.5pt;font-family:黑体'>DIOCParams</span></b><span lang=EN-US> </span><span
lang=EN-US style='color:#FFCC5B'>ENDS</span><span lang=EN-US> </span></p>

<p class=MsoPlainText style='margin-left:21.0pt;text-indent:-21.0pt;mso-list:
l3 level1 lfo8;tab-stops:list 21.0pt'><![if !supportLists]><span lang=EN-US
style='font-family:Wingdings'>l<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]><span lang=EN-US style='color:#66FFFF'>Internal1<span
style='mso-tab-count:2'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span>是指向<span
lang=EN-US>Win32应用应用程序用户寄存器结构的指针。</span></p>

<p class=MsoPlainText style='margin-left:21.0pt;text-indent:-21.0pt;mso-list:
l3 level1 lfo8;tab-stops:list 21.0pt'><![if !supportLists]><span lang=EN-US
style='font-family:Wingdings'>l<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]><span lang=EN-US style='color:#66FFFF'>VMHandle</span><span
lang=EN-US><span style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp; </span><span
style='mso-tab-count:1'>&nbsp;&nbsp;&nbsp; </span>虚拟机句柄</span></p>

<p class=MsoPlainText style='margin-left:21.0pt;text-indent:-21.0pt;mso-list:
l3 level1 lfo8;tab-stops:list 21.0pt'><![if !supportLists]><span lang=EN-US
style='font-family:Wingdings'>l<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]><span lang=EN-US style='color:#66FFFF'>Internal2</span><span
lang=EN-US> <span style='mso-tab-count:2'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>是指向设备描述块(DDB)的句柄。</span></p>

<p class=MsoPlainText style='margin-left:21.0pt;text-indent:-21.0pt;mso-list:
l3 level1 lfo8;tab-stops:list 21.0pt'><![if !supportLists]><span lang=EN-US
style='font-family:Wingdings'>l<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]><span lang=EN-US style='color:#66FFFF'>dwIoControlCode,
lpvInBuffer, cbInBuffer, lpvOutBuffer, cbOutBuffer, lpcbBytesReturned,
lpOverlapped</span>是传送到<span lang=EN-US>DeviceIoControl API的参数。</span></p>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -