Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1598 connectés 

  FORUM HardWare.fr
  Programmation
  ASM

  comment récupérer la couleur d´un pixel sous windows XP

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

comment récupérer la couleur d´un pixel sous windows XP

n°1071877
thebiche
Posté le 04-05-2005 à 15:13:34  profilanswer
 

Bonjour,  
 
J´ai développé en assembleur mirco sous DOS y´a bien longtemps. Je dois parvenir à balayer l´écran le plus rapidement possible sous windows XP, pixel par pixel (reproduire l´écran d´un Pc sur une autre comme une application de remote control en ""LIFE"" ). Existe-il une instruction ou est-il possible de lire directement dans la mémoire vidéo à partir de l´assembleur (le but étant la vitesse). Je ne sais pas si assembleur est la bonne solution, mais je suis à la recherche de toute solution possible.  
 
Merci,
 
thebiche

mood
Publicité
Posté le 04-05-2005 à 15:13:34  profilanswer
 

n°1071915
HelloWorld
Salut tout le monde!
Posté le 04-05-2005 à 15:29:09  profilanswer
 

Commence parfaire un truc qui marche en C avant de sortir l'assembleur.
Non on peut pas lire directement la mémoire. Mais tu peux récupérer sans problème ce qui est affiché sur le bureau. Voir la manipulation des bitmaps (GetDC( GetDesktopWindow() ), CreateCompatibleDC, CreateCompatibleBitmap, BitBlt...)
 

Citation :

remote control en ""LIFE""


c'est pas en lailleveux plutôt ? ;)


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
n°1071956
thebiche
Posté le 04-05-2005 à 15:38:58  profilanswer
 

salut,
 
J´ai déjà essayé vers cette solution. Pas en C mais avec VB (getPixel de la lib gdi32). Pour une résolution de 640 X 480, je peux faire au mieux, 10 ballayages par minutes, et le PC ram tant qu´il peut. Maitenant si tu voyais une autre solution plus performant, je suis preneuse.  
 
Voila ce que j ai tenté qui fonctionne bien mais le PC RAM tant qu il peut avec 512 MB RAM et 2.6 ghz
 
Private Sub Command1_Click()
    MakeTopMost (Me.hdc)
     
    update = True
    Dim sx As Integer
    Dim sy As Integer
     
    Dim tPOS As POINTAPI
    Dim sTmp As String
    Dim lColor As Long
    Dim lDC As Long
    lDC = GetWindowDC(0)
    Dim hform As Long
    hform = Me.hdc
 
    While (update)
        sx = sx + 1
        If (sx > 640) Then
            sx = 0
            sy = sy + 1
        End If
        If (sy > 480) Then
            sy = 0
        End If
        lColor = GetPixel(lDC, sx, sy)
        Rem SetPixel hform, sx, sy, vbWhite
        Rem SetPixel hform, sx + 1, sy + 1, vbBlack
         
        DoEvents
    Wend
 
End Sub

n°1071959
thebiche
Posté le 04-05-2005 à 15:39:28  profilanswer
 

a vi et bien sure je voudrais tout ca en : lailleveux ;)

n°1071970
thebiche
Posté le 04-05-2005 à 15:42:35  profilanswer
 

tu crois que ce serait plus performant en C sinon tant qu on y est ca va me permettre de réouvrir tous les vieux syllabus de mes cours qui pourrissent dans le grenier C c est y a bien longtem ca !!! Enfin entre deux j ai fait du développement COBOL la terre est bien basse pour moi :)

n°1071993
HelloWorld
Salut tout le monde!
Posté le 04-05-2005 à 15:55:40  profilanswer
 

En C ce sera plus performant, mais pas énormément certainement.
Ce qui est lent c'est GetPixel. Faut récupérer directement un tableau de bits via GetDIBits.
http://eric.aling.tripod.com/PB/tips/pbtip35.htm
http://www.vb-helper.com/howto_getdibits.html


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  ASM

  comment récupérer la couleur d´un pixel sous windows XP

 

Sujets relatifs
Aide pour un script html, recuperer email d'une page webModifier l'heure automatiquement sous windows
Récupérer toutes les variables d'un postProb syntaxe pour recuperer des taches planifiés
crée un net view (windows)[RESOLU][linux] récupérer les fils de fils
[JAVA]Récuperer tout les noeuds d'un JTree selectionnésComment récupérer des variables ASP qu'on envoie à FLASH ?
Application windows et gestion bddéquivalent de ioctl() sous windows
Plus de sujets relatifs à : comment récupérer la couleur d´un pixel sous windows XP


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR