阅读:2318回复:5
请教有关并口操作的问题!!
最近本人编程对并口操作时遇到一个麻烦的问题,在此项各位请教:
编程工具:VC++6.0,操作系统:Windows 98 问题:我使用以下的一段代码测试并口 _outp(0x378,0xaa); int iVal=_inp(0x378); 在调试版本下,返回的数值iVal=0xaa; 但是在发行版本下,同样的代码,返回的数值iVal=-86; 如果将_outp(0x378,0xaa);改为_outp(0x378,86); 在调试版本、发行版本都返回86。 本人作过许多其他类似数字的测试,发现凡是最高位为1的字节数据,返回的值都是-(256-发送数据)。 还有,这两行代码在Win2000下运行出错! 请各位高手指教!不胜感激! 我的E-mail:ljqlan@sina.com [编辑 - 4/19/02 作者: lijqlwl] |
|
沙发#
发布于:2002-04-19 15:56
还有,这两行代码在Win2000下运行出错! NT.w2k不能使用inp.oup指令!(写个驱动) |
|
板凳#
发布于:2002-04-26 13:37
返回值定义为unsigned int即可解决你说的头一个问题!
|
|
地板#
发布于:2002-04-26 22:55
呵呵,是啊,怎么用int了,在端口操作中一般使用BYTE,WORD,DWORD。
|
|
地下室#
发布于:2002-04-27 11:31
用 unsigned char类型的。
|
|
5楼#
发布于:2002-04-27 16:17
2000下不能直接对口进行操作,需要编写驱动,建议使用windriver
我最近也在2000下开发过并口的东西,可以多交流! |
|