Web-Programmierung mit C : Wie stelle ich das an?
-
Hallo.
Ich hoffe ich bin hier mal richtig gelandet.
Ich habe folgende Frage:Ich arbeite in einer Firma, die Zeiterfassungssoftware herstellt.
Die Software läuft ausschließlich unter Windows.
Nun wollen wir eine plattformunabhängige Lösung anbieten, mit der die Kunden dann den Webbrowser öffnen und Ihre Buchungen machen können.
Dabei sollte ich mit Windows-Sockets arbeiten zur Kommunikation mit der Software.Es soll dabei so sein, daß der Kunde auf seinem Linus/MAC Rechner nichts installieren muss, sondern nur den Webbrowser öffnen und loslegen kann.
Es muss also alles (Webserver?)auf dem Windows Server installiert werden, auf dem auch die Software läuft.
Der Client gibt dann, wie in einem Intranet die Adresse den Servers in der Adresszeile der Browsers ein und los gehts.
Die Webfunktionen sollen nicht in die Software integriert werden, sondern extra, also außerhalb der Haupt-Software.Jetzt die Frage:
Wie kann ich das Realisieren?
Ich kann C programmieren und habe Visual C++ Express.
Ich habe schonmal was von ISAPI DLLs gehört...Wie würdet Ihr das machen?
Habt Ihr schonmal was Programmiert?
Wie kann ich die Webfunktionen in interaktion mit der Software bereitstellen?Danke schonmal Mondmann
-
Also, ich hätte jetzt darauf getippt, dass du mit PHP oder so arbeiten musst.
Aber ich hab da keine Ahnung, was es da genau alles gibt.Ich schiebe dich mal zum Webzeugs, ich glaube das ist passender.
-
Dieser Thread wurde von Moderator/in estartu aus dem Forum MFC (Visual C++) 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.
-
hi,
es gibt mindestens 1000 möglichkeiten sowas zu machen. eine möglichkeit wäre z.b. apache(webserver) und php(skriptsprache, c-ähnliche syntax). damit könntest du das webinterface basteln und die php-skripts würden über irgendeinen ipc-mechanismus (lokale sockets z.b.) mit deine hauptanwendung kommunizieren. wenn's unbedingt c sein soll kannste z.b cgi einsetzten damit dein c-programm webfähig wird (es wird dann eine art plugin des webservers). einen eigenen webserver würde ich nicht coden, geht zwar, ist aber mit aufwand verbunden zumal es viele fertige lösungen gibt. wenn alles 'in einem guss' sein soll, dann kannst du natürlich auch einen minimalistischen open-source webserver nehmen, den du um deine funktionen erweiterst. wie gesagt, es gibt 1000 möglichkeiten...
-
Mondmann schrieb:
Wie würdet Ihr das machen?
Habt Ihr schonmal was Programmiert?
Wie kann ich die Webfunktionen in interaktion mit der Software bereitstellen?Das hängt davon ab, wieviel Interaktivität das Webbrowserinterface braucht.
Soll auf dem Broser einfach ein Formular stehen, wo der Nutzer in jedes Editfeld was reinschreibt und dass dann abschickt und dann kommt wieder eine statische Seite als Antwort vom Server?
Dann sieh dir mal CGI an.Oder soll sich der Inhalt schon zur Eingabezeit ändern?
Mit Fehlerüberprüfung schon während der Eingabe, neue Meldungen, die ständig reinkommen etc.
-
SeppSchrot schrieb:
Mondmann schrieb:
Wie würdet Ihr das machen?
Habt Ihr schonmal was Programmiert?
Wie kann ich die Webfunktionen in interaktion mit der Software bereitstellen?Das hängt davon ab, wieviel Interaktivität das Webbrowserinterface braucht.
Soll auf dem Broser einfach ein Formular stehen, wo der Nutzer in jedes Editfeld was reinschreibt und dass dann abschickt und dann kommt wieder eine statische Seite als Antwort vom Server?
Dann sieh dir mal CGI an.Oder soll sich der Inhalt schon zur Eingabezeit ändern?
Mit Fehlerüberprüfung schon während der Eingabe, neue Meldungen, die ständig reinkommen etc.Das soll volle Interaktivität mit der Software sein.
zB. wird ein Auswahlmenü bereitgestellt wo der Anwender auswählen soll.
Daraufhin antwortet die Software mit unterschiedlich langen und unterschiedlicher Anzahl von Datenpacketen.
Jeder Datenpacket ist maximal 1023Bytes lang, die Anzahl bekomme ich im ersten Packet mitgeliefert. die empfangenen Daten muss ich dann entsprechend aufbereiten, zwischenspeichern und dann an den Browser ausgeben.zB. wenn ich einen Kalender darstellen will, mit jeweils unterschiedlichen farben und einträgen für jeden Tag sende ich das hier:
KAL#blabla
und bekomme das startsignal und für jeden Tag eine Zahlenfolge die ich dann entsprechend interpretiere.
START[14]
00101|20394|343434|10101| usw.
...
...
..
STOPDas verwurstle ich nun, ich weiß was die Zahlen bedeuten.
das ist aber ne kleine Anforderung, es kann sein daß ich tausende solcher Datenblöcke bekomme, also
START[2300]....
...und wiederum jeder Block max 1023 lang ist.
die Daten speichere ich immer zwischen in einem array und stelle Sie entsprechend im Browser bereit.so, soviel zum Hintergrund:-))
grüße Mondmann
[quote]
-
du hast du auswahl zw.:
1.) C++ Socket Library http://www.alhem.net/Sockets/
2.) libcurl http://curl.haxx.se/
3.) boost asio http://asio.sourceforge.net/cu
-
Ich rate dir, schreib dir zu allererst mal eine kleine Schnittstelle, wo du die ganze Kommunikation und Verwaltung dieser lustigen Pakete usw. verwaltest.
Damit abstrahierst du schon mal ordentlich die scheinbare Komplexität dieser Software auf möglicherweise ein paar Methoden.Dann such dir deine lieblings-serverseitige-Sprache aus (php, perl, jsp/java, asp/.NET ... und programmiere damit die Web-Schnittstelle. C/CGI geht natürlich auch.
ms