Fernwartung via C#

07/11/2008 - 12:23 von Andre Grumbach | Report spam
Hallo zusammen,
ich versuche eine Art Fernwartungs Tool zu schreiben.

Dazu habe ich auch schon das ein oder andere gemacht (Steuern von Tastatur
und Maus Eingaben), jedoch habe ich mein Haupt Problem noch nicht gelöst.

Woher bekomm ich den Screen des zu steuernde PCs?
Am besten wàre ein 'Live Bild' und nicht alle 0,5-1sek. ein Screenshot
(jedoch würde ich das Notfalls auch nehmen)

Hat hier jemand eine Idee wie ich an den Screen kommen?

Danke,
Andre
 

Lesen sie die antworten

#1 Kerem Gümrükcü
07/11/2008 - 13:21 | Warnen spam
Hallo Andre,

Du kannst dir mal das VNC ansehen, also das VNC Protokoll
und dessen implementierung. Da gibt es aber auch so sachen
wie einen mirror treiber und so was. das ist schon recht kompliziert.
Ich habe mal daran mitgearbeitet, das ist wirklich verdammt komplex.
Aber unter C# (auch ohne Windows API!) kann man einen screenshot
echt einfach machen (du brauchst eine picturebox!):


try
{
this.Hide();

Bitmap bmpScreenshot = new
Bitmap(Screen.PrimaryScreen.Bounds.Width,
Screen.PrimaryScreen.Bounds.Height,
System.Drawing.Imaging.PixelFormat.Format32bppArgb);
Graphics gScreenshot = Graphics.FromImage(bmpScreenshot);
gScreenshot.CopyFromScreen(Screen.PrimaryScreen.Bounds.X,
Screen.PrimaryScreen.Bounds.Y, 0, 0, Screen.PrimaryScreen.Bounds.Size,
CopyPixelOperation.SourceCopy);
this.pictureBox1.Image = bmpScreenshot;
this.Show();
}
catch (Exception err)
{
MessageBox.Show(err.ToString());
this.Show();

}

So einfach! Das bitmap kannst Du serialisieren, komprimieren, format
veràndern, etc,... und dann
über das Netz schicken, im prinzip machen was du willst!
Grüße

Kerem

Ähnliche fragen