阅读:2590回复:20
谁研究过,serenum代码,可以切磋一下吗
我想在serenum中虚拟的创建10个不存在的port
在那个地方加代码? 也就是说,我要预先枚举出几个虚拟端口 |
|
最新喜欢:![]() |
沙发#
发布于:2002-11-22 17:25
这个问题比较有兴趣,请问你研究的设想?
|
|
|
板凳#
发布于:2002-11-25 09:33
我看了一下serenum的源代码,它只是枚举
RS-232的电子设备,也就是必须要有设备插上 他才能驱动,去枚举。 我现在一个问题是,因为我是虚拟窜口,不存在 真正的设备,而且我要一次枚举多个不存在的 窜口给虚拟窜口使用,我参考了国外一个公司 的软件(无代码,只有应用程序),发觉他做 到了,但是我现在修改serenum,舍弃检测真实 设备的代码,加了一点检测虚拟窜口的代码, 但是由于我们的虚拟窜口程序还没有写出来, 所以又是一个大问题,我无法测试,因而,我现在 只能先创建(即枚举)几个窜口放在总线上。 但是我在那个地方创建呢? 这个问题我搞了2天了,还没有搞定,有哪一个高手指点 一下!!! |
|
地板#
发布于:2002-11-25 09:41
那我觉得用一个通用的驱动程序来做简单的I/O测试是否可以?
同时INF文件可能也要修改才行。 |
|
|
地下室#
发布于:2002-11-25 10:06
用一个简单的i/o来测试,这我考虑过
现在主要的问题是我如何动态创建(枚举)多个 虚拟窜口,在那个地方实现这个代码呢? |
|
5楼#
发布于:2002-11-25 10:14
修改MSPORTS.INF是否可以?
|
|
|
6楼#
发布于:2002-11-25 10:19
我曾经看过,但是没这么考虑,这或许是一种方法
你的意思是说在msports中增加几个配置吗? |
|
7楼#
发布于:2002-11-25 10:27
增加几个配置,同时可能也要修改serenum.sys中枚举串口的代码,
让它认为有10个。 |
|
|
8楼#
发布于:2002-11-25 10:47
但是我参考国外一家公司的东西
他似乎没有修改msports! 修改枚举窜口的代码,我 这几天就一直弄不明白在那个地方 让驱动清楚有10个虚拟的窜口。 如果真实的,他肯定能检测出来! |
|
9楼#
发布于:2002-11-25 11:05
serenum.sys和serial.sys都是过滤驱动程序。
总线驱动程序创建了PDO,然后PnP管理器根据该PDO的注册表项装入它的驱动程序。 所以我怀疑修改他们是否能行? |
|
|
10楼#
发布于:2002-11-25 11:21
说得非常有道理
我一直认为很难行通,但是头一定要这么干 让我痛苦。 开是我曾经考虑写一个虚拟总线,但是关于 总线的资料太少,我看了一下toaster的bus 要移植的能让我使用,太麻烦。因为从头给我的 任务来看,我个人认为我主要的任务是要让 底层能识别我们的虚拟窜口,网卡,从而能把 这些虚拟设备融合起来。 其实,我们现在也是仿照国外的一家公司来实现功能 我刚才发觉国外那家公司也没有实现在一个驱动中 一次枚举10个窜口,他只是做了一个安装程序,安装了 10次!不过内部机制,还是没弄清楚! 请给我源代码吧,老天!!! 太他妈复杂了,真是痛苦!写驱动的确烦阿。window核心 我了解的的确不够,要努力。其实兄弟我以前一直在unix 下做东西的。 哥们,你是高手,多谢指点,并和我讨论!!! |
|
11楼#
发布于:2002-11-25 11:30
但是我刚有看到一段:
After Serenum detects a supported device, it creates a physical device object (PDO) for the device and reports the device to the Plug and Play Manager. The Configuration Manager uses the INF file and installers for the Toaster device to complete the installation of the Toaster device. A Toaster driver creates an FDO and attaches it to the Toaster device stack. Filter DOs can also be added to the Toaster device stack. 如果这样好象有可以。只要你的驱动支持PNP。 PDO(createed by root bus driver)又支持我上面的说法。 我们再讨论讨论。 |
|
|
12楼#
发布于:2002-11-25 11:39
说得非常有道理 你所说的10个虚拟串口是在设备管理器观察到的吗? |
|
13楼#
发布于:2002-11-25 14:38
对,目前我想我只要实现这一步为此!
有什么好的建议吗 |
|
14楼#
发布于:2002-11-25 17:01
你可以写一个inf安装文件通过添加硬件,一步步的更新可以做到。但是不知道这对你来说行不行?我不知道如何才能通过编程序来更新这个虚拟硬件。
|
|
15楼#
发布于:2002-11-26 08:52
可能我说得不够清楚,我再在这儿详细说明一下。
以前,我们写了虚拟的网卡,窜口驱动。下面是 蓝牙协议栈+usb驱动。由于网卡与窜口是虚拟的, 所以开始不支持即插即用。也就是说在加载驱动时 必须先安装usb+蓝牙协议栈,然后安装网卡于窜口。 卸载时,也必须手工的从网卡开始卸载,否则就出现问题。 现在的考虑就是在usb+bluetooth上写一个总线枚举程序 来识别虚拟网卡与窜口。并且支持即插即用。 由于我是新手,所以出现很多迷糊的地方。现在清楚了很多, 但是我身边一个高手一会说要写一个总线程序,一会只要写 修改SERENUM就可以。所以更是困惑阿 |
|
16楼#
发布于:2002-11-26 09:02
我能通过硬件安装向导添加这么一个东西,能够在设备管理器看到,但是感觉用处不是很大。
|
|
17楼#
发布于:2002-11-26 09:05
对,目前我想我只要实现这一步为此! 如果是这样,你可以做一个自动装载程序,装它10次。 同时主要是INF文件的一些项参照MSPORTS.inf. 老兄,能否将你的国外厂家的资料给我一份,让我也看看,说不定 能发现点东西。yuanpass@163.com 谢谢! |
|
|
18楼#
发布于:2002-11-26 09:14
用serenum我手工安装,的确可以安装上,这点我早就做过了
至于写一个自动装载工具安装10次,上周5我对头说,头否决了 他要求首先能能自动装载即枚举几个虚拟的窜口,而且在安装 好后,可以在用户态下发送配置命令动态的增加或者删减窜口 不好作阿! to ydyuse:兄弟,那是国外widcomm公司的蓝牙产品的安装 包,你需要吗,31M阿,发不了的!!! 我当时就是在他安装的目录下找到驱动手工的安装它的窜口来类比我 现在做的 |
|
19楼#
发布于:2002-11-26 09:18
喔,那就算了。不过可否EMAIL他的inf文件。
用户态下发送配置命令动态的增加或者删减窜口这个还比较好做。 前一问题又回到刚讨论的东西了。 |
|
|
上一页
下一页