.sys 文件足够驱动吗?

Posted

技术标签:

【中文标题】.sys 文件足够驱动吗?【英文标题】:Is .sys file enough for driver? 【发布时间】:2015-03-19 18:00:44 【问题描述】:

我有扫描仪设备驱动包包含3个文件:

    Scanner.inf Scanner.cat Scanner.sys

我不确定这个驱动程序包是否已满。

问题: 1. 这些文件足够驱动包和正常设备工作吗? 或者驱动包也必须包含DLL文件? 2. 如果我只有这 3 个文件(Scanner.inf、Scanner.cat、Scanner.sys),如何从 C# 向扫描仪设备发送命令“扫描页面”?

【问题讨论】:

【参考方案1】:

inf 文件应该告诉您它需要哪些文件。你的应该有:

(...)
[Version]
(...)
CatalogFile=Scanner.cat
(...)

[SourceDisksFiles]
Scanner.sys=1
(additional files you're missing...)

见Overview of INF Files。

【讨论】:

您建议使用哪种工具来查看 .sys 文件内容(其功能等)?这样我就可以了解 .sys 文件是否“包含”其他一些 dll 和库。 .sys 是编译后的二进制文件,旨在在内核模式下运行。即使您使用了高级工具,例如反汇编器或依赖遍历器,您也可能无法从中读取任何内容。但是,.inf 确实指定了驱动程序包作者打算分发的所有内容,并且它是一个文本文件,正如我的回答所示。【参考方案2】:

是的,这些文件就足够了。 INF 文件是设置信息文件,CAT 文件用于跟踪媒体集合中的数据,SYS 文件是驱动程序本身。

关于第二个问题,您可以使用 TWAIN 控制扫描仪。

http://www.codeproject.com/Articles/1376/NET-TWAIN-image-scanner

http://www.twain.org/

【讨论】:

以上是关于.sys 文件足够驱动吗?的主要内容,如果未能解决你的问题,请参考以下文章

如何加载sys驱动文件

QT编程可以用sys/socket.h这个头文件吗,怎么我的QT5找不到这个头文件,我的是wind

linux设备驱动(11) dev sys/dev sys/devices的区别

树莓派外部安装的 NTFS 磁盘上没有足够的可用空间

漏洞介绍驱动文件Microsoft32k.sys中的漏洞分析

怎么使用delphi实现电脑硬件驱动安装??