Hej
Jeg forsøger at snakke med en Sony Ericsson w910i igennem USB.
Jeg anvender tilgår en mobiltelefon som er sluttet til via USB kabel med
Win32::SerialPort på Windows XP.
På min bærbare fungerer det uden problemer.
På min stationære, med samme version af både XP, ActiveState perl og
Win32::SerialPort får jeg en 'Bad file descriptor'.
På den stationære kan jeg uden problemer anvende Hyperterminal eller Putty
til at snakke serielt med telefonen.
Google kender til syv hits på
Win32::SerialPort "bad file descriptor"
De ting der blev nævnt var
- avoid $|
- Use pl2bat
- bug when registering .pl file to the system => use perl script.pl
- cmd.exe <> command.com
Det er testet igennem uden held.
I PATH på begge maskiner er der:
C:\Perl\bin;C:\WINDOWS\system32;C:\WINDOWS;
Scriptet er her:
--------
#!/usr/bin/perl
use Win32::SerialPort;
new Win32::SerialPort ('COM27', 1) or die $!;
#
--------
En anden (for mig) meget underlig ting er at det dør med 'Bad file
descriptor at test.pl line 5.' hvis der er noget som helst i scriptet efter
kaldet, men med 'Died at test.pl line 5' hvis jeg fjerner '#' til sidst ?!?
Nogen der har en god ide?