![]() |
Formular einer exe per Browser im LAN anzeigen
Hallo zusammen,
ich habe folgende Aufgabenstellung bekommen und bisher keine brauchbare Lösung gefunden. Also: Auf einem Server soll eine exe laufen, auf die bis zu 7 Rechner gleichzeitig zugreifen sollen. Deshalb hatte ich mir gedacht, dass man in der exe die einzelnen Formulare per Browser erreichbar machen sollte. Die 7 Rechner sind nämlich per WLAN angebunden, wodurch es immer wieder zu Abbrüchen kommen kann. Eine dezentrale Lösung kommt wegen ODBC-Verbindungen nicht in Frage. Alle Lösungen, die ich hier im Forum gefunden habe, bezogen sich auf TCP-Kommandos die einen Button-Click transferieren... ich muss aber eine scrollbare Listbox und einige Buttons zur Verfügung haben. Gibt es da eine gängige Lösung das gesamte Formular zu übertragen? Auf eure Antworten bin ich schon sehr gespannt. Danke im Voraus. Stefan |
Re: Formular einer exe per Browser im LAN anzeigen
Da gibt es nur eine ganz einfache Antwort: Nein, das geht so überhaupt nicht.
Mögliche alternative Lösungen: IntraWeb verwenden oder ASP.NET mit Delphi Prism benutzen. Für Webgeschichten würde ich letztere Lösung gegenüber ersterer stark präferieren. Kompliziertere Lösungen: Mittels den Indy-Komponenten selber einen Webserver entwickeln der das Form dann eben in HTML generiert und die Antworten auswerten kann. Das würde ich mir persönlich aber nicht antun wollen. Wenn es etwas teurer sein darf (aber weniger Aufwand verursachen soll): Die Exe auf einen Windows Terminal Server legen und die bis zu 7 Clients mittels Remote Desktop darauf zugreifen lassen. Braucht halt eine Win-Server Lizenz und 7 Zugriffslizenzen für die Terminal Services. Geht auch via Browser mit dem RDP-Webclient. Das das gleichzeitig sein muss fällt VNC leider aus. |
Re: Formular einer exe per Browser im LAN anzeigen
Nunja ich kann dir direkt keine Hilfe geben da ich mich damit bisher nicht beschäftigt habe,
also im Bereich der Datenbanken haben wir im Intranet einige Formulare die im Browser per EXE aufgerufen bzw. erstellt werden. (z.b. CD-Ausleihe, alle CD's werden aufgelistet, ausgeliehen oder nicht etc...) Jedoch würde ich trotz allem lieber eine Lösung wie ASP.net vorschlagen, dort habe ich z.b. schon ein Webformular erstellt und im Endeffekt brauch es keine große Einarbeitungsphase. MfG Alaitoc |
Re: Formular einer exe per Browser im LAN anzeigen
Erstmal danke für die Vorschläge, aber wie kann ich denn z.B. einen IntraWebServer oder eine ASP.net Komponente in mein Programm integrieren und über diesen die jeweiligen Formulare für die Clients verfügbar machen?
@Phoenix: Wie würde das denn mit dem Server funktionieren? Läuft dann die exe nicht "für jeden Client" separat? Wenn nicht, wäre diese Lösung auf jeden Fall meine Bevorzugte, da ich mein Programm nicht, oder kaum ändern muss. Für weitere Vorschläge / Tutorials wäre ich sehr dankbar. Gruß Stefan |
Re: Formular einer exe per Browser im LAN anzeigen
Zitat:
|
Re: Formular einer exe per Browser im LAN anzeigen
Zitat:
Bei IntraWeb würdest Du eine ISAPI-Dll schreiben, in die Du die Business-Logik Deiner Anwendung einbaust. Die Web-formulare musst Du so oder so neu machen. Diese ISAPI-DLL wird dann in einem IIS oder einem Apache auf dem Rechner ausgeführt, der die Anwendung bereitstellen soll. Bei ASP.NET wirst Du wohl nicht viel von Deiner Applikation wiederverwenden können, ausser Du stellst aus Deiner Anwendung heraus Funktionen zur Verfügung, mit denen die ASP.NET Webanwendung dann kommuniziert. Sei es durch Interprozess-Kommunikation (im Stile eines Application-Servers) oder Du baust aus Deiner Anwendung eine DLL die eben diese Funktionen zur Verfügung stellt. Zitat:
Du musst Dir bei dem ganzen Vorhaben im klaren sein, dass hinter Desktopanwendungen und Webapplikationen (im Sinne von 'läuft im Browser') so dermaßen unterschiedliche Konzepte liegen, dass das was Du vorhast in aller Regel nicht durchführbar ist, ohne Deine Anwendung in großen Teilen umzubauen. Eine Ausnahme von der Regel wäre, wenn Du Deine GUI von der Logik vollständig durch Interfaces getrennt hast. In dem Moment wo Du aber auch nur eine einzige Datenmanipulation in igrendeinem 'OnClick' Event etc. auf einem Formular implementiert hast ist das rum. Dann wirst Du nicht umhin kommen, Deine Anwendung mit Rücksicht auf die Beschränkungen der Technologie 'Web' neu zu entwerfenn und entsprechend umzubauen. Oder - und das ist dann mit an Sicherheit grenzender Wahrscheinlichkeit die einfachere und schnellere und zudem noch zukunftssicherere Version - die Anwendung für das Web in einer aktuellen Technologie die für Web auch wirklich geeignet ist (z.B. eben ASP.NET mit Delphi Prism oder zur Not auch C#, alternativ Java) neu zu implementieren und dabei darauf zu achten, dass Du Erweiterungen die Du hier machst auch aus Deiner bisherigen Anwendung (z.B. via Webservices oder mittels einem Plugin-Systems) auch nutzen kannst, ohne das dann doppelt implementieren zu müssen. |
Re: Formular einer exe per Browser im LAN anzeigen
Zitat:
Die Anwendung sollte ihre Daten aber nicht im Programmverzeichnis, sondern in den richtigen Windows-Verzeichnissen speichern (USERS, ALL_USERS). Jeder Client braucht dann die Remote Desktop Client Software ( ![]() Es ist sogar möglich, die Anwendung in einem Webbrowser anzuzeigen. Dazu muss auf dem Client eine ActiveX-DLL registriert werden (Remote Desktop Web Connection ActiveX control). Serverseitig muss der Microsoft IIS installiert sein. Das Bild zeigt einen Windows Desktop "eingesperrt" im Internet Explorer. ![]() Man kann das aber auch so konfigurieren, dass der Anwender ausschliesslich die Anwendung sieht. |
Re: Formular einer exe per Browser im LAN anzeigen
Spricht viel dagegen Oberfläche und Businesslogik zu trennen und eine ThinClient-FatServer Anwendung daraus zu machen?
Wieviele Formulare enthält die Anwendung? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:36 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz