VB没有提供直接读写I/O口的方法。所以只能借助其他语言来编写DLL,然后再在VB中调用。如果要在Windows 3.X下读写端口,也可以下载ftp://ftp.winsite.com/pub/pc/win31/programr/vbasic/portz10.zip,它是一个免费的VBX,可以通过读写VBX的属性来实现读写端口的操作,十分方便。 如果你在Windows下使用过C/C++,那么编写这样的DLL可能没有什么困难。在C语言里都包括inp和outp函数。可以把下面这段C语言代码(32位)编译生成DLL,然后在VB中调用。 #include #include /*作用:从指定端口读入一个字节 参数:portid端口号 返回值:读入的字节*/ int _stdcall Inport(short portid) { return inp(portid);} /*作用:向指定端口写入一个字节 参数:portid端口号*/ void _stdcall output(short portid,short byte) { outp(portid,byte); } /*作用:从指定端口读入一个字节 参数:portid端口号 返回值:读入的字节*/ int _stdcall Inportw(short portid) { return inpw(portid);} /*作用:向指定端口写入一个字节 参数:portid端口号*/ void _stdcall Outportw(short portid,short word) { outpw(portid,(unsigned short) word); } 注意:这种方法只能用于Windows 95/98,不能用于Windows NT。