Hallo! Ist es möglich ein C++ über einen Webbrowser auszuführen und zu "bedienen"? Ich würde gern eine Windows-Anwendung zur Steuerung der seriellen Schnittstelle in C++ programmieren. Allerdings sollte diese Anwendung auf einem Webserver abgelegt und über ein Intranet ausführ- und bedienbar sein. Ist dies möglich und wenn ja - funktioniert dies gut ?? Ich hatte bisher noch gar nichts mit Java zu tun und daher sind meine Kenntnisse in dieser Programmiersprache gleich null. Daher würde mich zusätzlich noch interessieren, warum Java gut in Netzwerken funktioniert und C++ nicht !?? Vielen Dank für Eure Antworten !! Gruß semapf
Java läuft auf dem Client, somit fürst du es auf dem rechner aus von dem aus du es Aufrufst! Wenn du etwas auf dem Server machen willst ist es somit ungeignet! c-Code kannst du im Webserver als CGI-Skripte laufen lassen. Eine andere Möglichkeit ist es z.B: per php mit exicute() oder vergleichbaren ein C/C++ ( oder was auch immer.. muß halt ein ausführbares Programm sein) ausführen zu lassen! Funktioniert unter Linux & Apache ganz gut! Hierbei eben immer etwas auf die Sicherheit des Webservers achten! Stefan
Hallo @stefan1 Java kann natürlich genauso wie CGI in verbindung mit C laufen. Man spricht mit dem Browser einen Server an zb.: TOMCAT von Apache und führt auf dem Server ein JAVA-Servlet aus, welches wiederum alle JAVA Funktionen ausführen kann. Dieses funktioniert sehr gut und stabil. Leider gibt es nicht viele Provider, die Servlet-Container unterstützen, aber im "eigenen" Bereich ist das problemlos und mit keinen Kosten verbunden (TOMCAT, JAVA-SDK, J2EE...). Über das JNI (JAVA NATIVE INTERFAC) kann man C bzw. C++ ansprechen, aber warum dann nicht gleich alles in JAVA? MfG Achim
Hi Hardware in Java ansprechen ist schwierig. Es gibt für seriell/parallel zwar die Java COMMAPI bzw. das Zeuchs von rxtx.org für Linux aber das ist alles auch nichts anderes als eine C(++) DLL/SO die über das JNI angesprochen wird. Matthias
@Womisa, hab es schon ( zumindest so in etwa ) gewust, aber durch den Kommentar "Ich hatte bisher noch gar nichts mit Java zu tun[...]" von semapf, wollte ich in einem Satz den Unterschied erläutern und das ist meiner Meinung nach der größte! Wenn man schon mit C/C++ gearbeited hat ist es sicher leichter das Prog als CGI -c/C++ oder per Aufruf über php zu schreiben als es über Java zu realisieren! Kann aber auch daran liegen, das ich allgemein ( noch? ) nicht so ganz von Java überzeugt bin und zudem mich zuerst noch in die Mathereie einarbeiten müste! Stefan
Der Deiner Ansicht nach größte Unterschied ist aber gar keiner, wie womisa dargelegt hat. Auch Java-Applikationen (Servlets) können auf dem Server laufen, genauso, wie es in C/C++ geschriebene CGIs oder php/perl-Skripte machen; ein Unterschied ist, daß Java-Applets (oder Javaskript) auch auch dem Client laufen können. Bevor hier weitere Diskussionen geführt werden, sollte allerdings präzisiert werden, was mit semapfs Formulierung "Ich würde gern eine Windows-Anwendung zur Steuerung der seriellen Schnittstelle in C++ programmieren. Allerdings sollte diese Anwendung auf einem Webserver abgelegt und über ein Intranet ausführ- und bedienbar sein." genau gemeint ist. Soll die Anwendung die serielle Schnittstelle des Servers bedienen? Oder soll die Anwendung vom Server heruntergeladen und auf den Clients lokal ausgeführt werden? Im übrigen ist Deine (Stefan) Tastatur kaputt; Du solltest Dir mal eine neue anschaffen. (Das von Dir verwendete Satzendezeichen '!' lässt dies zumindest vermuten)
Hallo! Erstmal Danke für die vielen Antworten. Also folgender Sachverhalt liegt vor: Ich möchte über Intranet ein elektrisches Tor öffnen. Dafür möchte ich ein Modul verwenden, das ich in der Zeitschrift ct entdeckt habe ( http://www.heise.de/ct/ftp/projekte/com2lan/ ). Dieses Modul besitzt einen XPort, welcher einen kleinen Webserver enthält, auf dem man ein kleines Java-Applet oder HTML-Dokument ablegen kann und über eine IP-Adresse kontaktierbar ist. Darüber hinaus wandelt das Modul LAN in seriell. Somit kann ich den ebenfalls im Modul integrierten Mikrocontroller ansprechen. Wenn ich das richtig verstanden habe, verläuft der Steuerungsweg wie folgt: Webbrowser -> LAN -> seriell -> Mikrocontroller -> elektr. Signal -> Tor wird gesteuert. Nun zu meinen Problemen. Ich kenne mich gut aus in Sachen Elektrotechnik, Mikrocontrollern, C und C++. Leider habe ich, Elektrotechniker, wenig Ahnung von Netzwerktechnik und Java. Ich hatte bisher nur mit Stand-Alone-Systemen zu tun. Somit weiß ich nicht, wie ich meine Bytes über LAN (mittels Webbrowser) gesteuert an meinen Mikrocontroller senden kann, sodass dieser mir das gewünschte elektrische Signal ausgibt und ich mein Tor öffnen bzw. schließen kann. In C++ und einem Stand-Alone-System wäre das sicherlich kein großes Problem. Da aber C++ nicht einfach über einen Webbrowser ausführbar ist, bin ich auf Java aufmerksam geworden - aber davon habe ich, wie gesagt, wenig bis gar keine Ahnung. Des Weiteren versuche ich zusätzlich das Tor mit einer Kamera zu überwachen. Das so aufgezeichnete Bild sollte auf der gleichen Webseite, mit der ich das Tor öffne und schließe, zu sehen sein. Dafür möchte ich eine Kamera mit Webserver (IP-Kamera) verwenden - ist dies sinnvoll ? Wie könnte man ein Kamerabild noch im Webbrowser anzeigen ?? Nun hoffe ich, dass dies nicht zuviel auf einmal war, aber trotzdem würde ich mich über ein paar Anregungen sehr freuen !! Gruß semapf
Hallo semapf, bin gerade durch Zufall auf diese Seite gestoßen und habe den Beitrag gelesen. Wollte nur fragen, ob es mittlerweile (ist ja doch schon einige Zeit her) eine Lösung für das von Dir angefragte Problem gibt! Stehe nämlich gerade vor der selben Hürde (C++, aber kein Java-Verständnis), sodaß mich die Lösung sehr interessieren würde! Vielen Dank vcrab SMILEY
Hallo Die Ansteuerung der seriellen Schnittstelle funktioniert mit Java mittels rxtx.org absolut eindwandfrei. rxtx ist übrigens auch nicht 'für Linux' sondern läuft mindestens auch noch auf Windows problemlos. Gruss Michael
Hallo Also der XPort hat einen Netzwerkport, welcher dann direkt auf die serielle Schnittstelle zum Microcontroller durgeschleift ist. Wenns nicht unbedingt über einen Browser bedient werden muss, dann kannst Du ganz einfach ein Tool in C++ oder jeder anderen Sprache schreiben, welches direkt über Sockets mit dem XPort kommuniziert. Wenns über den Browser gehen soll, dann würde ich im Netzwerk nebst dem XPort einen weiteren Webserver (auf einem PC) aufsetzten, auf dem ein CGI mit dem GUI für die Bedienung abläuft und per Sockets mit dem XPort kommuniziert. Mit diesen Lösungen musst Du nichts in Java oder am XPort selber programmieren. Gruss Johnny
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.