我正在尝试使用设备的库文件(file.dll)在 PHP 中打开一个 COM 端口进行连接。
我收到此错误:致命错误:未捕获的异常 'com_exception' 带有消息'源: file.DLL file.DLL
描述: com c:\users\user\folder\com.prg 第 9 行中的错误 OLE IDispatch 异常代码 0 来自 MSComm :设备未打开.. C:\Users\user\folder\index.php:12 中的 1429' 堆栈跟踪:#0 C:\Users\user\folder\index.php(12): com->open (1, '115200,n,8,1') #1 {main} 在第 12 行的 C:\Users\user\folder\index.php 中抛出
错误中提到的文件“com.prg”在文件夹中不存在(隐藏文件可见)。
我尝试重新安装 MSComm,使用另一根电缆,使用另一个端口,重新安装设备驱动程序,更新 PC 驱动程序。
这是代码:
<?php
$fp = new COM("file.dll");
echo "<br>". $fp->init();
echo "<br>". $fp->open(1, "115200,n,8,1");
echo "<br>". $fp->close();
?>
在 open() 命令中 1 - COM1 端口,115200 - 每秒位数,n - 无奇偶校验,8 - 数据位,1 - 停止位。
该连接在使用完全相同配置的另一台计算机上工作,因此这里的问题不是代码。
有任何想法吗?