Jump to content

Empfohlene Beiträge

Geschrieben

Hallo,

ich habe eine Vorlage für die Verwendung der Steuerschnittstelle für die Programmiersprache Visual Basic .NET gemacht.

Hierzu möchte ich folgende Vorbemerkung machen:

Es gab einige unter Euch, die sich schon mit der alten Schnittstelle beschäftigt haben. "Damals" wurden die VB-Projekte vornehmlich in Visual Studio Express 2010 geschrieben.

Es wäre schön, wenn wir und darauf verständigen könnten, daß die VB-Projekte für die MBS-Schnittstelle in Visual Studio Express 2013 verfasst werden, so daß alle, die Interesse an der neuen Schnittstelle haben, die gleiche Grundlage benutzen... es vereinfacht den Austausch von VB-Projektdateien.

Wer noch kein Visual Basic .NET installiert hat oder zu Visual Studio Express 2013 wechseln möchte , der kann dies auf der Microsoft-Seite http://www.microsoft.com/de-de/download/details.aspx?id=40787 herunterladen. Visual Basic .NET ist Teil von Visual Studio Express 2013, was für Privatanwender kostenfrei zur Verfügung steht. (Visual Studio Express 2013 hat ein eigenes Installationsverzeichnis, so daß Visual Studio Express 2010 erhalten bleibt)

Ein Beispielprogramm für die Verwendung in VB habe ich noch nicht (kommt aber bald...), damit man sehen kann, wie mit dem VB-Projekt "unzugehen" ist.

Im Anhang die Vorlage für VB (in Visual Studio Express 2013) (Im VB-Projekt gibt es eine erklärende ReadMe.txt, die im Visual Studio im Projektmappen Explorer aufgerufen werden kann..)

Gruß

EASY

 

 

Mbs-clients-1.0.zip

  • 8 Monate später...
Geschrieben

Hallo,

Nachdem Neo die Schnittstelle um Kommandogruppen erweitert hat, habe ich die Vorlage für die Verwendung der Steuerschnittstelle für die Programmiersprache Visual Basic .NET um die Verarbeitung von Kommandogruppen erweitert.

Vor der Verwendung von Kommandogruppen sollte zuerst deren Definition in der wiki (1.1.1. Kommandogruppen) angeschaut werden.

Die Verwendung von Kommandogruppen ist in der ReadMe.txt in der Vorlage beschrieben.

P.S. Die Vorlage kann auch (weiterhin) für das Versenden von (nur) Kommandos wie gewohnt verwendet werden...

Gruß

EASY

Mbs-clients-commandgroup-1.0.zip

  • 10 Monate später...
Geschrieben

Hallo,

Ich habe eine neue Vorlage erstellt, die folgende Änderungen berücksichtigt, die sich mit der Einführung von Plugins ergeben haben.

1) Beim Aufruf eines Plugins im MBS werden dem Programm (Plugin) Startparameter übergeben siehe wiki 

Die Parameter (außer Spracheinstellung) werden von der Vorlage ausgewertet.

Hinweis:
In der Vorlage, werden diese Parameter für einen Testlauf (->"Starten") unter "Projekt" ->Eigenschaften" -> "Debuggen" -> "Befehlszeilenargumente" bereitgestellt um eine korrekte Funktion einer Auswertung zu überprüfen.

Achtung:
Wenn die erzeugte .exe-Datei gestartet werden soll, müssen die Parameter mit dem Aufruf mit übergeben werden!

Hinweis:                                                                                                                                                                                                                                                  Das Speichern von Werten im Programm über "my.settings" funktioniert bei Plugins nicht, da mit jedem Aufruf ein temporäres Verzeichnis angelegt wird, welches beim Schließen wieder gelöscht wird.

 

2) Es besteht die Möglichkeit über eine Datei Einstellungswerte für das Programm zu speichern und wieder aufzurufen. (siehe Startparameter "/DataDir:")

In der Vorlage ist das Schreiben und Lesen der Datei exemplarisch aufgeführt (die Werte werden zeilenweise in die Datei geschrieben und ausgelesen).

 

3) Die Oberfläche entspricht der meiner Plugins. (... kann geändert werden...)  

Oberflaeche.jpg

Gruß

EASY

 

Mbs-clients-for-plugins.zip

  • 7 Monate später...
Geschrieben

Hallo MBS-Gemeinde, Hallo Easy

Ich arbeite schon seit längerer Zeit mit dem MBS – bis jetzt hab ich durch "learning by doing" alles für mich wichtige selber geschafft. Aber jetzt stehe ich an – ich möchte gern mit der Steuerschnittstelle und VisualStudio meine Anlage steuern. Leider schaffe ich es nicht die Code für z.b. Weichen oder Signale ansteuern in das Programm richtig einzufügen. Ich benutze das Mbs-clients-for-plugins.zip. Kann mir jemand diesbezüglich weiterhelfen oder vielleicht auch ein Beispiel in das Plugin einfügen wo ich es dann nach meinen Wünschen ergänzen kann.

 

Vielen Dank im vorhinein

Zugrol

 

Geschrieben (bearbeitet)

Hallo Zugrol,

... ich habe Dir ein kleines Beispiel gemacht...
VB-TestProjekt.jpg

MBS-TestProjekt.jpg

- Mit dem Button "DWW01(umschalten) kann die Weiche "DWW01" umgeschalten werden. Die Weichenstellung wird angezeigt. Die Anzeige der Weichenstellung ändert sich auch, wenn Du die Weiche im MBS (mit einem doppelten Mausklick) umschaltest.

- ... desgleichen für das "Signal01" mit dem Button "Signal01(umschalten)"

- Für das Umschalten von "Signal2" habe ich eine CheckBox genommen... auch hier wird der Zustand angezeigt.

- Wird "Signal02" auf "offen" geschaltet (...egal ob über den Button oder direkt im MBS), wird der Lok die Geschwindigkeit 60 zugewiesen (...aber nur, wenn sie sich auf dem Gleis "GVorStop" befindet !)
Achtung! Die Schnittstelle wertet den Nullpunkt der Lok aus um zu bestimmen auf welchem Gleis sie sich befindet.
- Betritt die Lok das Gleis "GSchnell" wird ihr eine Geschwindigkeit von 90 zugewiesen
- Betritt die Lok das Gleis "GLangsam" wird ihr eine Geschwindigkeit von 50 zugewiesen
- Betritt die Lok das Gleis "GStop" wird sie angehalten (...aber nur, wenn "Signal02" auf "geschlossen" steht)

Hinweis: Das MBS-Projekt muß schon geladen sein bevor das VB-Projekt gestartet wird...

In der .zip ist das VB-Projekt und das MBS-Projekt (MBS-TestProjekt.mbp)...

P.S.... Deine Einstellung "learning by doing" gefällt mir sehr...

... ich hoffe die Kommentierung im VB-Projekt ist ausreichend, daß Du es nachvollziehen kannst... (... ist nicht unbedingt meine Stärke)

Gruß
EASY
 

TestProjekt.zip

Bearbeitet von EASY
Ergänzung gestezt
Geschrieben

Hallo Easy,

Vielen Dank für die schnelle und kompetente Hilfe. Ich hab schon die ersten Änderungen (Dank deiner super Erklärungen) durchgeführt und es funktioniert. Auf die vielen Komandos wäre ich nie alleine gekommen.

Im übrigen war ich bis dato nur passiver Forumbesucher und verfolgte die vielen Hilfestellungen untereinander - und jetzt bin ich froh das auch mir einmal geholfen wurde.

lg Zugrol

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto besitzen, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen.

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...