阅读:1111回复:17
to arthurtu,大家也来帮帮忙,出谋划策一下吧,我真的很着急很着急!必有重谢
我已用VIOPort类的构造函数指定了要虚拟的端口了
[编辑 - 7/16/02 by amei] |
|
沙发#
发布于:2002-07-16 15:20
需要重新起贴吗?
我不知道VIOPort类 :( 但是,我知道,如果已经有callback对这个port了,就不会成功的。 |
|
板凳#
发布于:2002-07-16 15:23
com1已经被系统接管了,你来不及了。 :D
|
|
地板#
发布于:2002-07-16 15:30
有没有别的办法呀,我不想就这样死掉。我在查帖子是看到有人说DRx可以起作用,那是什么呀,怎么用,你知道吗?麻烦麻烦你帮我想个折吧,要不我跳楼的心都有了。
|
|
地下室#
发布于:2002-07-16 15:32
你到底想干什么呢?
有人访问com1的时候你可以知道? |
|
5楼#
发布于:2002-07-16 15:37
是这样的。有人用VC编了一个东西,但在VC下没有双字输出的函数,但在VXD中有呀。他那个程序是往3fc-3fe端口输出数据,我想监视这两几个端口,一有输出我就把它捕过来用VXD中的双字输出函数将数据送往端口,你说这样可不可行呢,你有何高见呀!我先谢谢了
|
|
6楼#
发布于:2002-07-16 15:47
。。。
太夸张了吧?这也用VxD? 你有那个VC的程序的源码吗? VC有双字输出的函数呀。 outpd 实在没有,自己写一个也比写vxd好多了。 |
|
7楼#
发布于:2002-07-16 15:51
我不知道。那个程序不是我写的,我对vc知道的也很少。领导说话我只能照做。你说的outpd在98下的vc6可用吗?有没有什么限制呢
|
|
8楼#
发布于:2002-07-16 15:54
outp只有16位的VC可用吧?
|
|
9楼#
发布于:2002-07-16 16:00
outpd实际上是函数Voutprtd的宏。
outpd(USHORT yourPort, ULONG yourData); 比如 unsigned short uCOM1_Base = 0x3f8; unsigned long ulMyData = 0x0; outpd(uCOM1_Base + 3, ulMyData); 在98下可以直接访问端口。 |
|
10楼#
发布于:2002-07-16 16:25
arthurtu我知道为什么偏要用VXD来实现双字输出了。应用程序都运行在Ring3下很容易受到烦扰,被Windows里的其他东西强占优先级,因此输出经常中断。而 VXD是运行在Ring0下的,有最高优先级,用它进行输出应该有没有会强。为达到这个目的,我应该怎么入手呢,给些意见吧。
他用378进行输入然后用3fc-3ff进行输出。 也就是说我要编一个VXD程序使他总是拥有系统的最高优先级,用来进行输出。 我最初的想法就是捕捉378端口的i/o操作,再在VXD中输出数据,可以吗?指教一二,辛苦了!!!!! [编辑 - 7/16/02 by amei] |
|
11楼#
发布于:2002-07-16 16:34
他是从LPT读数据,从com1输出数据吧?
这是标准设备,只要速度符合你的要求,就在VC调用操作LPT和COM的接口就可以了。不需要直接向端口写数据了吧?ms的driver会保证你的要求的,如果速度可以的话。 |
|
12楼#
发布于:2002-07-16 16:40
我不知道那个人的vc是怎么做的,总之那个程序的输出速度无法满足外部硬件的要求,原因之一就是总有东西强那个程序的优先级,使数据无法及时的送往硬件!老兄,我作这个VXD 是无法改变的了,帮我想点折吧!
|
|
13楼#
发布于:2002-07-16 16:49
就算你拦截了3fc的访问,照你说的,也没有用的。
你的VC程序总被抢先,他就不会发送数据到3fc去,你拦截了有用吗? 你的速度要求多少? com至少可以到128kbits/s的,大约十几kbyte/s的速度。 |
|
14楼#
发布于:2002-07-16 16:59
我知道你的意思,我也想过,但我不管他的vc程序在处理数据时是否被抢先,我只管哪些已经处理好的可以用的数据在输出时不要被抢先就行了,有什么办法吗?
你认为我直接获取哪些要被送出的数据地址,不经过378端口直接输出,有没有可能呢? |
|
15楼#
发布于:2002-07-16 17:04
我只管哪些已经处理好的可以用的数据在输出时不要被抢先就行了,有什么办法吗? 已经送到端口的数据,谁可以抢先?!除非掉电了。不大懂你的意思。 你认为我直接获取哪些要被送出的数据地址,不经过378端口直接输出,有没有可能呢? 什么意思? |
|
16楼#
发布于:2002-07-16 17:05
arthurtu,你真是一个好人,谢谢了。我先下了,放心吧我不会跳楼的,即使跳也是从地面往上跳。祝你好运,希望明天还会在这看见你。
|
|
17楼#
发布于:2002-07-16 17:06
arthurtu,你真是一个好人,谢谢了。我先下了,放心吧我不会跳楼的,即使跳也是从地面往上跳。祝你好运,希望明天还会碰到你,也希望明天我的问题能解决。
|
|