2012-02-10 70 views
5

我正在創建一個連接到通過COM5上的串行連接連接的3G調制解調器的php腳本。授予PHP訪問COM端口的權限

我收到以下錯誤,我相信這是因爲PHP不具有讀/寫訪問COM5:

Warning: fopen(COM5:) [function.fopen]: failed to open stream: No such file or directory in C:\xampp\htdocs\SMStest\test2.php on line 9

// mode com1: BAUD=9600 PARITY=N data=8 stop=1 xon=off 
$fp = fopen ("COM5:", "w+"); 
if (!$fp) { 
    echo "Uh-oh. Port not opened."; 
} else { 
    $e = chr(27); 
    $string = $e . "A" . $e . "H300"; 
    $string .= $e . "V100" . $e . "XL1SATO"; 
    $string .= $e . "Q1" . $e . "Z"; 
    echo $string; 
    fputs ($fp, $string); 
    fclose ($fp); 
} 
+0

試過它沒有冒號? – Leigh 2012-02-10 11:46:23

+0

是/無冒號沒有區別,相同的錯誤。 – Luben 2012-02-10 11:47:32

+0

我很笨,但也許這可以幫助嗎? http://www.phpclasses.org/package/3679-PHP-Communicate-with-a-serial-port.html – Svish 2012-02-10 11:55:37

回答

1

有很多方法來訪問Windows COM端口,替代方案你的方法與下列路徑打開它:

\Device\00000123(你可以在設備管理器,性能,細節,物理設備對象名稱的正確值)

\\.\com5(這是我如何打開端口作爲一個文件,如果我正在寫一個程序在C或東西)