Seriak ve VB 2017

Jaroslav Buchta jaroslav.buchta na hascomp.cz
Pátek Červen 9 06:21:25 CEST 2017


Protoze IsOpen je metoda, ktera signalizuje stav konkretniho objektu a 
ne stav portu jako takoveho. Predpokladam, ze dokud se nezavola Open 
nebo TryOpen, tak objekt na prirazeny  na port v systemu IMHO vubec nesaha.

Dne 09.06.2017 v 0:11 Pavel Hudecek napsal(a):
> Zajímavé. Dnes to writeln funguje:-)
>
> Ale mám jiný problém:
> Přidal jsem tam timer, který každých 300 ms vypíše porty do listboxu 
> seznam portů s poznámkou, zda jsou otevřené:
>
> Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles 
> Timer1.Tick
>    Dim port As String
>    Dim ports As String() = SerialPort.GetPortNames()
>    Dim sp3 As New SerialPort
>
>    lb1.Items.Clear()
>    For Each port In ports
>        sp3.PortName = port
>        If sp3.IsOpen Then
>            port = port + " op"
>        Else
>            port = port + " cl"
>        End If
>        lb1.Items.Add(port)
>    Next port
>    sp3.Dispose()
> End Sub
>
> Výsledek je, že to u všech píše cl, i když COM5 je od spuštění 
> programu otevřen. Stejně tak když COM4 otevřu terminálem, taky je 
> stále cl.
>
> Z MSDN jsem pochopil, že otevření cizím programem to neindikuje, takže 
> druhý problém je vlastně v pořádku. Ale proč to nehlásí otevření COM5, 
> když ho má otevřen on sám?
>
> (tedy ne že by na tom záleželo, když to oficiálně neumí poznat 
> otevření jiným programem, tak je to na houby a lepší bude try-open 
> (což už jsem vyzkoušel a funguje dle očekávání), ale i tak by mě 
> zajímalo, co je špatně s tím isopen)
>
> PH
>
> -----Původní zpráva----- From: Pavel Hudecek
> Nepomohlo. Žádná změna.
>
> Samozřejmě že binární čtení pak udělám jinak, ale zatím mi na hraní stačí
> tohle.
>
> -----Původní zpráva----- From: Ladislav Vaiz
>
> Dne 7.6.2017 v 12:15 Pavel Hudecek napsal(a):
>> Ale zajímavé je, že ve výstupu není na konci žádné crlf nezávisle na 
>> tom, zda použiju write, nebo writeline. Když do odesílaného textboxu 
>> udělám enter, tak se na výstupu projeví.
>>
>
> Nepomohlo by sp1.NewLine = vbCr & vbLf ?
> Jestli chcete komunikovat binárně, tak ReadExisting nebude nejlepší
> volba, protože vrací string a ne pole bytů.
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list




Další informace o konferenci Hw-list