Est CopyFromScreen un bon moyen de faire des captures d'écran?
Je suis entrain de créer une application qui prend une capture d'écran de l'ordinateur de bureau à un certain intervalle de temps.
Code:
String nme = "";
Bitmap printscreen = new Bitmap(Screen.PrimaryScreen.Bounds.Width,
Screen.PrimaryScreen.Bounds.Height);
Graphics graphics = Graphics.FromImage(printscreen as Image);
graphics.CopyFromScreen(0, 0, 0, 0, printscreen.Size);
nme = DateTime.Now.ToString();
printscreen.Save(@"F:\Temp\printScre.jpg", ImageFormat.Jpeg);
- Est CopyFromScreen un bon moyen de faire la capture d'écran du bureau?
- Si je veux envoyer cette capture d'écran, pour le serveur distant, ce qui devrait être la meilleure façon de le faire?
- Dois-je de compression avant de l'envoyer, et si oui, quels sont les moyens les plus efficaces?
OriginalL'auteur hridya | 2013-10-14
Vous devez vous connecter pour publier un commentaire.
Extrait de Code pour l'envoi de mail avec pièce jointe:
(basé sur cette blog)
Extrait de Code pour FTP:
(basé sur MSDN)
OriginalL'auteur Jakub Szułakiewicz
Oui, c'est parfaitement droit. Bien que, je recommed de vous rendre sur les liens suivants ici, parce qu'il y a déjà des réponses à votre question dans une certaine forme.
Une autre solution avec CopyFromScreen et plus compliqué solution avec un certain éclairage sur le problème.
Comme pour l'envoi à un serveur distant, pensez à utiliser
TcpClient
ou e-mail. La Compression est toujours une bonne idée si vous prenez plusieurs écrans ou si le réseau est lent, cad l'espace est faible, etc. Concernant l'efficacité de la compression, de regarder certains archivators disponibles là-bas et prendre ce dont vous avez besoin. Ils varient principalement dans un format de compression, la vitesse et la qualité de compression, mais vous pouvez presque totalité d'entre eux de décider si vous avez besoin de vitesse ou de la qualité.Je n'ai pas ce genre d'expérience. Vous avez à tester vous-même et savoir si cela fonctionne pour vous. Juste le laisser tourner pendant une semaine et vous verrez si il y a des vide écrans. Il dépend de façon cruciale, c'est que tous vos écrans sont tous de droite. Si vous pouvez vous permettre de données perd, il suffit d'aller avec l'autre solution que j'ai proposé.
hridya: Il y a un problème avec l'obtention de vide capture d'écran, lorsque l'application s'exécute en tant que Service Windows. Quand il est "normal" de l'application, everythin est OK.
thx pour dissiper ce doute.. et peut-être que c'est bête question, mais u peut me dire ce qu'entendez-vous par " lorsque l'application s'exécute en tant que Service Windows ? est-il signifier long de l'application en cours d'exécution ??
un service windows est un processus en cours d'exécution sans GUI sur l'arrière-plan de votre système d'exploitation
OriginalL'auteur Ondrej Janacek