VB.net - Desktopsharing
lima-city → Forum → Programmiersprachen → Programmieren mit .NET & Mono
ansatz
ausgeben
bereitgestellten methoden
bild
bildinformation
datum
http
kompakte sachen
logik
maus
performance
problem
programm
protokoll
senden
server
url
versenden
verwenden
vorhaben
-
Hi
Ich möchte gerne mit vb.net den Desktop eines Rechners, auf dem der Client installiert ist sharen und in meinem Server anzeigen. Nun habe ich ein paar Probleme. Einmal wie 'nehme' ich quasi den Desktop 'auf', ist ja so ähnlich wie ein livestream, und wie sende ich diese Daten dann zwischen client und Server. Geht das mit Winsock oder kann ich damit nicht kompakte Sachen wie Bildinformationen senden, was allerdings eigentlich gehen müsste (ist ja irgendwo auch nur Text).
Ich hoffe mein Problem ist verständlich und ihr könnt mir weiterhelfen.
Natürlich weiss ich, dass es bereits Programme gibt die das machen, aber es ist doch einfach schöner wenn man etwas selbst macht, das dann auch alle Fzunktionen hat die mann selber braucht!
MFG -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Hallo programtools,
klingt nach einem größeren Vorhaben. Mich würde interessieren auf welchem Stand deine Programmierkenntnisse sind, denn das könnte u.U. schwieriger werden.
Einen Ansatz liefere ich dir trotzdem: Remote Desktop Protocol (kurz: RDP)
Dies ist eine Implementierung eines Protokolls über TCP/IP von Microsoft und dürfte deine Anforderungen so ziemlich erfüllen. Was du tun kannst ist, zu versuchen dieses Protokoll zu verwenden. Frag mich aber nicht wo du die Treiber dafür herkriegst, evtl. gibts die gar nicht erhältlich.
Würde dir von daher eh empfehlen etwas über Open Source zu verwenden. Hier habe ich zwei Websites dazu gefunden, von denen du wohl den Sourcecode für das RDP bekommen kannst:
- XRDP
- rdesktop
Wenn du das alles selbst implementieren willst, dann wird das schwieriger. Dann musst du dir ein eigenes Protokoll ausdenken, um die Daten auszutauschen:
- Pixeldaten vom Client zum Server
- Befehle über Tastatur + Maus vom Server zum Client
- (Sitzungsauf- und abbau)
Die Pixeldaten müsstest du an deinem Client zu einem Bild zusammenstellen (+ komprimieren). Das kann man dann über einen WinSock versenden, kein Problem, denke ich. Problem wird die Aktualisierungsrate: wie oft du das Bild des Clients zum Server schicken möchtest. Da wird es wohl irgendeine Performance-Grenze geben, die auch stark von deinen Algorithmen abhängt.
Was für Funktionen möchtest du denn zusätzlich haben? Glaube nicht, dass man auf die schnelle alleine etwas besseres herzaubern kann, als es momentan aufm Markt gibt...:-)
-
Vielen DAnk erstmal für diese sehr ausführliche Hilfe!
Ich programmiere hauptsächlich in vb (seit ich 10 bin in vb6 und seit nun einiger zeit in .net 2008)
Nebensächlich programmiere ich noch in Phython, allerdings nur, weil phython eben einige NAchteile bietet (ich benutze phython eigentlich nur im Zusammenhang mit blender um animationen mit logik zu versehen)
dann bin ich noch recht gut in Abap, was allerdings nochmal ne ganz andere Geschicht ist & in webprogrammiereung (php, html, javascript...)
Aber wie gesagt beschäftige ich mich hauptsächlich mit vb.net wenn es um Programme geht.
Ich hatte einmal eine sehr gute Möglichkeit (leider für vb6) gefunden den Desktop 'zu filmen', allerdings weis ich jetzt weder wie ich das versende noch wie ich das in vb.net code umwandle...
Im Endeffekt möchte ich erstmal über die von vb.net bereitgestellten Methoden das bild senden und in einer Picturebox ausgeben. Dort dann mauscoordinaten auslesen zurücksenden und an die andere MAus ausgeben
Natürlich gibt es so etwas und auch deutlich flüssiger, besser ... aber ich würde es gerne selber machen, wenn das irgendwie geht!
MFG -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage