Autor Beitrag
Martok
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 3661
Erhaltene Danke: 604

Win 8.1, Win 10 x64
Pascal: Lazarus Snapshot, Delphi 7,2007; PHP, JS: WebStorm
BeitragVerfasst: Di 07.08.07 13:12 
Hallo!

Heute mal was ganz spezielles: ich möchte eine eine einzelne Anwendung (und von dieser gestartete Prozesse, also den kompletten Prozessbaum abwärts) per VNC o.ä. übertragen. Dabei soll also nicht der komplette Remote-Desktop übertragen werden, sondern nur die Fenster der Anwendung(en). Diese sollen dann auf dem Client-PC wieder so erstellt werden. Ach ja: der Server muss unter NT/W2k laufen.

Im Prinzip wäre das so was Ähnliches wie Citrix, bloß anders ;)

Man könnte das natürlich auch als neues Projekt aufmachen, aber ich frage lieber erst mal obs das nicht schon gibt. Ein paar Probleme hätte ich da nämlich noch:
- CopyRect von einem Fenster klappt ja nur, wenn es nicht verdeckt ist, da diese Bereiche sonst geclippt werden
- Fenster mit Regions dürften doof aussehen wenn man sie auf Rechtecke zeichnet...
- Wie findet
- Wie zum Teufel kopiert man Menus/PopupMenus? ;)

Und bevor ich da keine Antworten drauf hab, wird das eh nichts.
Also: kennt jemand so was?

Sebastian

_________________
"The phoenix's price isn't inevitable. It's not part of some deep balance built into the universe. It's just the parts of the game where you haven't figured out yet how to cheat."
Reinhard Kern
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 591
Erhaltene Danke: 14



BeitragVerfasst: Di 07.08.07 15:30 
Hallo,

ja, was eigentlich recht altes: X-Window. Damit kannst du die Fenster auf jedem Rechner darstellen, der eine TCP/IP-Verbindung hat, und auf dem ein X-Server läuft (der Server ist die Seite, die die Fenster darstellt). X-Server gibt es für alles was je das Licht der IT-Welt erblickt hat.

Gruss Reinhard

Moderiert von user profile iconTino: Quote-Tags entfernt (die waren ja völlig falsch platziert :-))
Martok Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 3661
Erhaltene Danke: 604

Win 8.1, Win 10 x64
Pascal: Lazarus Snapshot, Delphi 7,2007; PHP, JS: WebStorm
BeitragVerfasst: Di 07.08.07 18:25 
Es gibt X-Clients, die eine laufende Windows-Applikation übertragen können? Sag mal Link ;)
Für mich ist X Unix, aber ich lass mich gerne eines besseren belehren.

_________________
"The phoenix's price isn't inevitable. It's not part of some deep balance built into the universe. It's just the parts of the game where you haven't figured out yet how to cheat."
Dezipaitor
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 220



BeitragVerfasst: Di 07.08.07 23:43 
Das ganze kannst du mal vergessen mit VNC!

Das einzige was mit dazu einfällt, wäre Remotedesktop ab WinXP. Dort werden tatsächlich die Anweisungen für die Darstellungen übers Netzwerk transferiert und nicht das Bild selbst.
Jedoch ist RemoteDesktop ziemlich tief drin im System. Und ich kenne noch kein VNC Clone, der soetwas nachgemacht hat.

Um remote Apps ala X machen zu können, müsste man wohl den Windowsgrafikkern anpassen. Ich kann mir jedoch nicht vorstellen, dass es in nächster Zeit gemacht werden würde. Warum? MS wäre ja schön doof, wenn sie sowas erlauben würden. Dann könnte man nämlich einen WinServer aufstellen und alle Clients wären mit Linux bestückt. Und man könnte dann ohne Lizenz Windows unter Linux nutzen. Nur zum Beispiel.

Wenn dann müsste man seine Anwendung für soeinen Zweck anpassen. Also nach dem Client-Server Prinzip. Aber mit fremden Anwendungen soetwas zu machen? Tja, außer jemand erfährt, wie man MS Remotedesktop anpassen könnte. Versteht mich nicht falsch RemoteDesktop kann man mit Schnittstellen in eigene Programme integrieren. Aber großartig anpassen kann man es nicht.
noidic
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 851

Win 2000 Win XP Vista
D7 Ent, SharpDevelop 2.2
BeitragVerfasst: Mi 08.08.07 08:32 
Die Variante mit nem X-Server klappt solange, wie du die Anwendung, die remote angezeigt werden soll, selbst modifizieren und somit statt der Win-API die X-API kannst. Ob das mit Delphi hinhaut möchte ich mal in Frage stellen, zumindest die vcl fällt dann völlig flach

_________________
Bravery calls my name in the sound of the wind in the night...
Reinhard Kern
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 591
Erhaltene Danke: 14



BeitragVerfasst: Mi 08.08.07 10:45 
user profile iconnoidic hat folgendes geschrieben:
Die Variante mit nem X-Server klappt solange, wie du die Anwendung, die remote angezeigt werden soll, selbst modifizieren und somit statt der Win-API die X-API kannst. Ob das mit Delphi hinhaut möchte ich mal in Frage stellen, zumindest die vcl fällt dann völlig flach


Klar, man muss die Anwendung umschreiben auf einen Windowmanager für X. Das Problem mit der GUI hat jeder, der universelle Anwendungen schreiben will, siehe auch Java. Wie gross der Aufwand ist, hängt natürlich vom bestehenden Programm ab und von der Bibliothek, die man für den Zweck verwendet. Für einfache Formulare kann das auch an einem Tag erledigt sein.

Allerdings hat ja noch niemand etwas Besseres vorgeschlagen, und ich würde eine Portierung auf X jedenfalls vorziehen, bevor ich anfange, ein Single-Window-VNC selbst zu schreiben. Sobald jemand so etwas findet, kann man hier alles mit X streichen. War dann eben ein Satz mit X.

Gruss Reinhard
Martok Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 3661
Erhaltene Danke: 604

Win 8.1, Win 10 x64
Pascal: Lazarus Snapshot, Delphi 7,2007; PHP, JS: WebStorm
BeitragVerfasst: Mi 08.08.07 11:14 
Klingt ja alles ganz nett nur... Ich habe keinen Zugriff auf die Programme. Ein Satz mit X wars dann wohl wirklich.

Aber was gehen würde: die Anwendungen Virtualisieren und dann à la Wine mit anderer API laufen lassen. Ok, ich glaube das wäre dann doch wieder komplizierter als ein Citrix/VNC...

_________________
"The phoenix's price isn't inevitable. It's not part of some deep balance built into the universe. It's just the parts of the game where you haven't figured out yet how to cheat."
Reinhard Kern
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 591
Erhaltene Danke: 14



BeitragVerfasst: Mi 08.08.07 15:49 
user profile iconMartok hat folgendes geschrieben:
Klingt ja alles ganz nett nur... Ich habe keinen Zugriff auf die Programme. Ein Satz mit X wars dann wohl wirklich.

Aber was gehen würde: die Anwendungen Virtualisieren und dann à la Wine mit anderer API laufen lassen. Ok, ich glaube das wäre dann doch wieder komplizierter als ein Citrix/VNC...


Ja, wenn das so ist, dann nimmst du am besten VNC und machst halt am Server nur ein normales Fenster auf. Wenn du am Client die Fenster günstig anordnen kannst, kommst du mit entsprechend wenig Platz aus. Ist vielleicht sogar übersichtlicher als mehrere fremdgesteuerte Fenster.

Gruss Reinhard