C++ in HTML einbetten



  • Client? Wird etwa PHP auf dem Client ausgeführt? Nein! Es wird auf dem Server ausgeführt und der Client bekommt eine andere HTML-Seite (halt dynamisch erzeugt!) geliefert. Wer ist denn so doof und glaubt, das JSP-, ASP- und PHP-seiten auf dem Client ausgeführt werden? Natürlich werden die Seiten auf dem Server compiliert/interpretiert und dann bekommt der Client eine ganz andere Seite geliefert. Und anstatt das ein PHP-Interpreter oder eine JavaVM den Code abarbeitet, arbeitet die CPU die kompilierten Cpp-Seiten ab.



  • Hi,

    ja - ich bin der Entwickler von Tntnet http://www.tntnet.org/ (danke Artchi für die Erwähnung).

    Ich bin schon sehr lange ein Anhänger von C++ und auch ein Anhänger von Webapplikationen. Vor ein paar Jahren wollte ich diese Technologien zusammen führen. Und daraus ist Tntnet entstanden.

    Die Idee ist, C++-code in HTML einzubetten. Also ähnlich JSP oder PHP. Im Gegensatz zu den bekannteren Technologien habe ich aber einen ein wenig abweichenden Ansatz gewählt. Ich habe einen Präcompiler, welcher aus diesen C++/HTML-Seiten namens ecpp C++-Klassen generiert. Diese werden über den Compiler und Linker gejagt und heraus kommt eine shared Library. Das ganze geschieht zur Compilezeit. Der Webserver bekommt nur noch den compilierten Code zu sehen, was sowohl die Geschwindigkeit als auch die Sicherheit erhöht.

    Neben den Ecpp-Dateien kann man aber auch normale C++-Klassen verwenden oder auch beliebige Bibliotheken, so daß der Entwickler den kompletten Sprachreichtum von C++ für seine Webapplikationen nutzen kann.

    Das ganze läuft unter den meisten Betriebssystemen wie Linux, FreeBSD, OpenBSD oder Solaris. Unter Windows nicht.

    Ich werde am nächsten Sonntag, 8.10.2006 in Dresden beim Linux-Info-Tag (http://www.linux-info-tag.de/) und am 21.10.2006 in Giessen bei Practical Linux (http://www.practical-linux.de/) einen Vortrag halten. Ausserdem stelle ich auf der LinuxWorldExpo in Köln am 14.11.-16.11.2006 aus. Wer also Interesse hat, kann mich gerne dort besuchen.

    Tntnet



  • Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum Rund um die Programmierung verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • Dieser Thread wurde von Moderator/in rüdiger aus dem Forum Rund um die Programmierung in das Forum Webzeugs verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • @TNTNET:

    Genau deines Seite ist mir bei der Google-Suche in der liste aufgefallen aufgrund der ich dann hier gepostet habe.
    Alles andere war eher unbrauchbar



  • Läuft das so gar nicht unter windows oder einfach nur mit größerem Aufwand?
    Gibt es also keine Möglichkeit das Ding offline zu testen wenn man kein Linuxsystem hat 😞 ?



  • Kennt denn irgendwer was vergleichbares was auch auf Windowsrechenr funktioniert?



  • Ich habe schon über einen Windows-Port nachgedacht. Das Problem ist nur, daß ich kein Windows habe und auch keins gebrauchen kann. Prinzipiell wäre es natürlich machbar. Ganz einfach ist das nicht. So ein paar Unix-Sachen verwende ich. Die müsste man dann mit Windows nachprogrammieren.

    Persönlich finde ich Unix und Linux halt besser und habe daher für mich keine Verwendung. Wenn aber genügend Nachfrage da wäre, könnte man sicherlich über eine Lösung nachdenken 😉 .

    Tntnet



  • Tja, schade.
    Würde dich dafür ja gerne unterstützen, doch habe ich leider keien Ahnung von Netzwerkprogrammierung 😞

    Naja, kann man nichts machen.



  • Man braucht doch nur einen C++ Compiler (Linker) auf dem Client, der den Code aus der HTML Seite nimmt compiliert und ausführt. Das ganze nennt man den C++ Virtal machine und jeder muss es sich runterladen, wenn er will, dass Cpplets (LOL CPP-lets passt sogar irgendwie) bei ihm laufen.



  • Danach war jedoch nicht gefragt.



  • Kahino schrieb:

    Danach war jedoch nicht gefragt.

    Muhi89 schrieb:

    Hallo Leute, wie kann man C++ Code in HTML einbetten?

    Hmm, vielleicht doch. :p 😃



  • Nun gut, sry, hast Recht.
    Die ursprüngliche Frage lautete nur so, doch habe ich "danach war nicht gefragt" leichtfertig von mir gegeben weil ich den kompletten Thread im Sinn hatte und zu diesem Wunsch nähere Spezifikationen stattgefunden haben, sollte also ähnlich wie php oder dergleichen funktionieren.
    Aber du hast natürlich Recht, mit der Frage 🙂

    EDIT:
    Aber mal was anderes.
    Ist das Thema Netzwerke und Serversysteme sehr kompliziert?

    Nehmen wir mal an, man könnte recht gut c++ und vielleicht mehr oder weniger viel mit der WIN32-API.
    Würde man ohne Wissen über Serversysteme und dergleichen scheitern wenn man sich den Opensourcequellcode anschaut und versucht ihn auf ein andere Betriebssystem zu portieren?



  • Sicher ist das zu leisten. Andere haben das auch gelernt. Es kommt natürlich auf das Projekt an, wie kompliziert das ist.

    Wenn Du Interesse hast, kann ich Dich dabei unterstützen, wenn Du Tntnet auf Windows portieren möchtest.

    Prinzipiell ist Tntnet in ANSI-C++ geschrieben. Lediglich einige Linux/Unix-System-APIs wurden verwendet. Diese sind:

    - Netzwerk (socket, listen)
    - Threading (pthread)
    - fork (geht mit Windows nicht, kann man aber drauf verzichten)
    - "Daemonisieren" (entweder weg lassen oder als Windows-Service implementieren)

    Netzwerk ist mit einem Wrapper realisiert, welcher von std::iostream abgeleitet ist. Dieser wäre neu zu schreiben.
    Threading ist auch gekapselt. Sollte nicht allzu schwer sein
    Fork und Daemonisieren wird in der Hauptklasse tntnet.cpp verwendet. Diese müsste man ausbauen. Wenn Tntnet lediglich als Entwicklungsplattform dienen soll, dann braucht es nicht als Service zu laufen und man kann diese Sachen einfach weg lassen.

    Tntnet



  • Ich kotz jetzt einfach mal neben die tüte man kann html in c++ einbetten und das prog dann als cgi-script laufen lassen. Zu meinen Anfängen hab ich sowas mal gebaut als Frontend für einen Postfix Mailserver is aber nicht wirklich sinnvoll denk ich das geht auch mit php und sogar besser für den fall.

    MFG eiskalt



  • Warum denn so unfreundlich?

    Du solltest Dich besser mal informieren, bevor Du so etwas von Dir läßt. Wenn Du es nicht gut hinbekommen hast, dann heißt das nicht, daß das nicht geht. Es geht und es hat durchaus seine Vorteile gegenüber PHP oder anderen Techniken. Beispielsweise ist es schneller als alles, was sonst am Markt verfügbar ist.

    Komm doch einfach mal zu Practical Linux www.practical-linux.de nach Giessen am 21.10.2006. Da halte ich einen Vortrag. Oder auf der Linux-World-Expo www.linuxworldexpo.de in Köln am 14.-16.11.2006 bin ich mit einem Stand vertreten. Da führe ich Dir das gerne vor. Inklusive Benchmarks.

    Tntnet



  • war nicht unfreundlich gemeint wollte damit nur sagen ich schieß mal n bischen am Thema vorbei.
    Hingekriegt hab ichs schon hat auch funktioniert nur is das nicht c++ in html einbetten sondern andersrum und bei einem frontend das nur einmal benutzt wird um das ding einzurichten kommts nicht wirklich auf geschwindigkeit an.

    MFG eiskalt



  • Ok - dann habe ich Deinen Betrag falsch verstanden. Daneben heißt also leicht offtopic.

    Trotzdem wäre es schön, den einen oder anderen bei Practical-Linux oder auf der Linuxworldexpo zu sehen.

    Tntnet



  • Ich werde mir dann demnächst mal anschauen ob ich mit dem Quellcode überhaupt klar komme.
    Sollte ich damit klar kommen und keine Lebensaufgabe werden, werde ich mich dann mal an einer Portierung versuchen.
    Nachdem ich einen Bericht einer Person gehört habe die auf einer dieser Linuxverantaltungen anwesend war, will ich das jetzt nur noch mehr haben 🙂



  • Hi,

    meinen nächsten Vortrag über Tntnet halte ich am 21. Oktober auf Practical Linux in Gießen. Gerne würde ich mich mit euch über Tntnet unterhalten. Wäre schön, wenn der eine oder andere mal vorbei schaut.

    Ausserdem stelle ich auf der Linux-World in Köln vom 14.-16.11.2006 aus. Wer Freikarten möchte, kann sich gerne bei mir melden.

    Gruß

    Tntnet


Anmelden zum Antworten