.NET dll / Mehrere Ethernet Transceivers

Dieses Forum ist für alle Software- und Installationsfragen bestimmt.

Moderator: marcus

.NET dll / Mehrere Ethernet Transceivers

Postby Andi » Sun 16. Oct 2011, 11:47

Hallo,
die IRTransServer Klasse bietet die Möglichkeit Remotes und deren Commands auszulesen.
Besteht analog auch die Möglichkeit die Anzahl und die Kennung ID/IP-Adresse der vorhanden bzw. vom Server entdeckten Transceivers auszulesen?
All diese Informationen werden ausgegeben, wenn ich den Server in der Shell mit "irserver64 lan" starte.

Hintergrund:
Ich versuche IRTrans Ethernet Geräte in http://www.myHomeControl.ch zu integrieren. Ich würde dem Anwender gerne eine Liste der vorhandenen Transceivern präsentieren, aus welcher er das zu bearbeitende Gerät wählen kann.

Mit freundlichen Grüssen
Andi
Andi
 
Posts: 10
Joined: Sun 16. Oct 2011, 11:14

Re: .NET dll / Mehrere Ethernet Transceivers

Postby IRTrans » Sun 16. Oct 2011, 15:22

Hallo,
klar, das geht:

Der Call "GetDevicelist" gibt ein Objekt DEVICELISTEX zurück das mit allen IRTrans Devices gefüllt ist.

Bei einem Fehler wird NETWORKSTATUS zurückgegeben.

Gruß, IRTrans
IRTrans
Administrator
 
Posts: 2115
Joined: Mon 21. Apr 2008, 23:32

Re: .NET dll / Mehrere Ethernet Transceivers

Postby Andi » Tue 18. Oct 2011, 19:05

Hallo IRTrans,
danke für die rasche Antwort.

Leider liefert der Aufruf von GetDevicelist immer null.

Der IRServer findet das Gerät im Netzwerk.
Dies ist die Ausgabe des IRServers, wenn ich ihn in einer Dosbox starte:

C:\Program Files\IRTrans>irserver64 lan
IRServer64 Version 6.08.28
[ 0]: IRTrans LAN : IR VER: E6.08.10 ETH VER: L1.10.30 SN: 56720
MAC:00-22-3e-08-06-5a IP Addr: 192.168.1.62

GetRemotelist und GetCommandlist liefern korrekte Werte bzw. Listen, GetDevicelist jedoch immer null.
Woran kann das denn liegen?

Mit freundlichen Grüssen
Andi
Andi
 
Posts: 10
Joined: Sun 16. Oct 2011, 11:14

Re: .NET dll / Mehrere Ethernet Transceivers

Postby IRTrans » Tue 18. Oct 2011, 23:48

Hallo,
wichtig dafür ist, dass man am Anfang ein Objekt GuiClient und nicht irserver öffnet.

Gruß, IRTrans
IRTrans
Administrator
 
Posts: 2115
Joined: Mon 21. Apr 2008, 23:32

Re: .NET dll / Mehrere Ethernet Transceivers

Postby Andi » Thu 20. Oct 2011, 08:52

IRTrans wrote:Hallo,
wichtig dafür ist, dass man am Anfang ein Objekt GuiClient und nicht irserver öffnet.

Gruß, IRTrans


Verstehen nicht wie ich vorgehen muss. Habe folgendes versucht:

1: Start->Alle Programme->IRTrans->GUIClient
=> Fehlermeldung, dass kein IRServer läuft

2:
- IRServer in DosBox gestartet
- Start->Alle Programme->IRTrans->GUIClient => Gui öffnet sich und ich kann Befehle senden
- Rufe nun in meinen Programm folgende Zeile auf:
IRTrans.NET.DEVICELISTEX list = (IRTrans.NET.DEVICELISTEX)irt.GetDevicelist();
=> list ist jedoch null

3:
- stoppe IRServer
- Rufe GUIClient.exe aus der DosBox auf => Fehlermeldung, dass kein IRServer läuft

4:
- suche in der IRTrans.NET.dll ob es einen Client gibt. Kann aber nichts entdecken.

Wie soll ich vorgehen? Ich implementiere den Client in meiner SW, daher möchte ich eigentlich kein GuiClient öffnen sondern einfach beim Server die Liste der ermittelten Geräte abrufen.

Mit freundlichen Grüssen
Andi
Andi
 
Posts: 10
Joined: Sun 16. Oct 2011, 11:14

Re: .NET dll / Mehrere Ethernet Transceivers

Postby IRTrans » Thu 20. Oct 2011, 12:51

Hallo,
es ging nicht darum den GUI Client laufen zu lassen sondern eine andere Klasse an Stelle von IRTransServer zu nutzen:

irt = new GUIClient("127.0.0.1");

Sie hat mehr Methoden und zusätzliche Funktionen. Der GUI Client wird dadurch nicht geöffnet oder dargestellt.

Gruß, IRTrans
IRTrans
Administrator
 
Posts: 2115
Joined: Mon 21. Apr 2008, 23:32

Re: .NET dll / Mehrere Ethernet Transceivers

Postby Andi » Thu 20. Oct 2011, 13:47

Hallo IRTrans,
diese Klasse steht mir leider nicht zur Verfügung.
Ich verwende die Version 4.0.28.31129 der IRTrans.NET.dll.
Diese wurde mit dem Setup von Ihrer Webseite installiert.
Gibt es eine aktuellere Version davon? Wo könnte ich die erhalten?

Gruss
Andi
Andi
 
Posts: 10
Joined: Sun 16. Oct 2011, 11:14

Re: .NET dll / Mehrere Ethernet Transceivers

Postby Andi » Thu 20. Oct 2011, 14:55

hallo IRTrans,
habe eine GUIClient-Klasse in der IRTrans.GUI.dll gefunden.
Instanziiere nun ein Objekt dieser Klasse statt der IRTransServer-Klasse.
IRTrans.GUI.GUIClient _cGuiClient = new IRTrans.GUI.GUIClient("127.0.0.1");
object list = _cGuiClient.GetDevicelist() liefert immer noch null
object list = _cGuiClient.GetRemotelist() funktioniert tadellos.

Wo könne da der Hund begraben sein?
Gruss Andi
Andi
 
Posts: 10
Joined: Sun 16. Oct 2011, 11:14

Re: .NET dll / Mehrere Ethernet Transceivers

Postby IRTrans » Thu 20. Oct 2011, 16:38

Hmm, dann gehen mir so langsam auch die Ideen aus. Ich muss das mal selbst testen.

Gruß, IRTrans
IRTrans
Administrator
 
Posts: 2115
Joined: Mon 21. Apr 2008, 23:32

Re: .NET dll / Mehrere Ethernet Transceivers

Postby IRTrans » Fri 21. Oct 2011, 19:54

Hallo,
in GetDevicelist ist tatsächlich ein Fehler drin - der ist in der nächsten Version beseitigt.

Wenn Sie die IP Adresse benötigen ist allerdings ein anderer Call besser:

Dim info As MODEINFO
Dim obj As Object



obj = irt.GetDeviceModeEx()

If IsNothing(obj) Then Exit Sub
If (obj.GetType().Name = "MODEINFO") Then
info = obj
ElseIf (obj.GetType().Name = "NETWORKSTATUS") Then
IRTransError(obj)
Exit Sub
Else
Exit Sub
End If

Hier steht nach dem Aufruf im Member remote2 bei einem LAN Gerät nach dem Aufruf die IP Adresse.

Gruß, IRTrans
IRTrans
Administrator
 
Posts: 2115
Joined: Mon 21. Apr 2008, 23:32

Next

Return to Software / Installation

Who is online

Users browsing this forum: No registered users and 20 guests

cron