IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Problème Capture Ecran


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 1
    Par défaut Problème Capture Ecran
    bonjour,

    j'ai créé un prog qui fait des captures d'ecran, ca marche bien dans l'ensemble mais il reste quelques problemes :

    1- le curseur de la souris n'est jamais capturé
    2- quand je lis une video avec media player classic, ça me met la video en noir
    3- certaines "infos bulle" ne sont pas capturés (cf l'image de word : la partie que j'ai mis en rouge n'est pas capturé)



    j'utilise la librarie "gdi32.dll", existe-il d'autres librairies qui peuvent resoudre mes problemes ?
    ou est ce qu'il y a des erreurs dans mon code ?

    voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    public Bitmap CaptureScreen() {  
    int hSDC, hMDC;
    int hBMP, hBMPOld;
    int r;
    hSDC = CreateDC("DISPLAY", "", "", "");
    hMDC = CreateCompatibleDC(hSDC);
    FW = GetDeviceCaps(hSDC, 8);
    FH = GetDeviceCaps(hSDC, 10);
    hBMP = CreateCompatibleBitmap(hSDC, FW, FH);
    hBMPOld = SelectObject(hMDC, hBMP);
    r = BitBlt(hMDC, 0, 0, FW, FH, hSDC, 0, 0, 13369376);
    hBMP = SelectObject(hMDC, hBMPOld);
    r = DeleteDC(hSDC);
    r = DeleteDC(hMDC);   
    oBackground = Image.FromHbitmap(new IntPtr(hBMP));
    DeleteObject(hBMP);
    return oBackground;
    }

  2. #2
    Rédacteur
    Avatar de Louis-Guillaume Morand
    Homme Profil pro
    Cloud Architect
    Inscrit en
    Mars 2003
    Messages
    10 839
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Cloud Architect
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2003
    Messages : 10 839
    Par défaut
    2- quand je lis une video avec media player classic, ça me met la video en noir
    désactive l'accélération video dans les options de WMP

  3. #3
    Expert confirmé
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Par défaut
    Citation Envoyé par frangelus Voir le message
    j'utilise la librarie "gdi32.dll", existe-il d'autres librairies qui peuvent resoudre mes problemes ?
    ou est ce qu'il y a des erreurs dans mon code ?
    gdi32.dll c'est Windows. Peut on utiliser autre chose que Windows sur Windows ? j'en doute ...

Discussions similaires

  1. [CF 1.1][C#] Problème d'ecran tactile
    Par kennyone dans le forum Windows Mobile
    Réponses: 7
    Dernier message: 21/02/2007, 15h11
  2. capture ecran dans le Cview
    Par xiabolo86 dans le forum MFC
    Réponses: 1
    Dernier message: 09/01/2007, 10h53
  3. Capture écran du menu grub
    Par aymanouch dans le forum Applications et environnements graphiques
    Réponses: 8
    Dernier message: 01/12/2006, 16h11
  4. capture ecran
    Par latisane dans le forum MFC
    Réponses: 7
    Dernier message: 08/03/2005, 16h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo