
Hallo zusammen.
Ich lese mit folgendem code meine Com 2 Schnitstelle aus.
<?
error_reporting(0);
ini_set("pfpro.defaulttimeout",5);
`mode com1: BAUD=9600 PARITY=N data=8 stop=1 xon=hw`;
$fp = fopen ("COM2:", "r");
if (!$fp) {
echo "Com Port nicht geöffnet.<br>";
} else {
$daten = fgets($fp,200);
echo "vor Exploade - $daten <br><br>";
$daten = preg_replace("/ +/", ';', $daten);
$daten = trim($daten);
$daten = ltrim($daten);
echo "vor Exploade2 - $daten <br><br>";
$daten2 = explode(";",$daten);
$datei = "com.txt";
$dateioeffnen = fopen($datei,'a+');
fwrite( $dateioeffnen, $daten);
}
fclose ($fp)or die ("Fehler beim schliessen der Com Verbindung");
?>
Das funktioniert eigentlich alles gut solange es daten zum abholen hat.
Sobald jedoch keine daten mehr vorhanden sind, bricht das script mit einer Fehlermeldung ab und der Port wird nicht mehr geschlossen. Ab dann wird beim nächsten Aufruf Permission Denied angegeben, weil der Port nicht geschlossen wurde.
Hat jemand ne Idee wie ich das verhindern kann?
Gibt es ne möglichkeit die Verbindung trotz Fehler zu beenden?
Vielen dank für eure Hilfe.
Zitat:und die wäre?
pascal79
, bricht das script mit einer Fehlermeldung ab und der Port wird nicht mehr geschlossen.
Code: In Zwischenablage kopieren (nur IE)