elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  obtener el hDC que contiene la imagen del fondo de escritorio
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: obtener el hDC que contiene la imagen del fondo de escritorio  (Leído 2,474 veces)
<[(x)]>

Desconectado Desconectado

Mensajes: 215



Ver Perfil
obtener el hDC que contiene la imagen del fondo de escritorio
« en: 9 Marzo 2009, 23:40 pm »

holas

 Lo q ando buscando es la forma de obtener el controlador del DC del fondo de pantalla. (hDC)

 No es para sacar la imagen de fondo sino para poner una imagen mía la cual modificaría constante mente mientras el programa este vivo.

 les agradezco por leer, y les agradecería MAS si pudieran poner algo q pueda ayudarme ..

 54¬ui) att: <[(x)]>


En línea

<[(x)]>
Krackwar ™

Desconectado Desconectado

Mensajes: 100



Ver Perfil
Re: obtener el hDC que contiene la imagen del fondo de escritorio
« Respuesta #1 en: 10 Marzo 2009, 00:20 am »

No se si te servira , un code mio para cvambiar el fondo de el escritorio en asm
Código
  1. include  'win32ax.inc'
  2. .data
  3. imagen db 'C:\Windows\pompas.bmp'  ;Cambiar C:\Windows\pompas.bmp por la ruta de la imagen que quieran
  4. .code
  5. start:
  6. push SPIF_UPDATEINIFILE
  7. push imagen
  8. push 0
  9. push SPI_SETDESKWALLPAPER
  10. call [SystemParametersInfo] ; Cambiamos el fondo por C:\Windows\pompas.bmp
  11. ;------------------------
  12. invoke ExitProcess,0 ;Terminamos
  13. .end start

Por si no entiendes el code la api que cambia el fondo es SystemParametersInfo


En línea

WHK es mas u17r4m4573r31337 que yo



El error mas grande de el mundo es decir que el ser humano es inteligente.

Facismo , antifacismo , etc.. la misma mierda ..
Soy el-> http://tinyurl.com/fantasma-de-krackwar
Código
  1. mov ecx,1000
  2. Etiqueta:
  3. invoke printf,"No Copiare en clases"
  4. loop Etiq
<[(x)]>

Desconectado Desconectado

Mensajes: 215



Ver Perfil
Re: obtener el hDC que contiene la imagen del fondo de escritorio
« Respuesta #2 en: 10 Marzo 2009, 01:30 am »

mm
 
 lo q estoy buscando es pasar algo como un pequeño videito en ese DC

 si eso q pusistes no tilda la pc y es rápido puede q me sirva.
En línea

<[(x)]>
LeandroA
Moderador
***
Desconectado Desconectado

Mensajes: 760


www.leandroascierto.com


Ver Perfil WWW
Re: obtener el hDC que contiene la imagen del fondo de escritorio
« Respuesta #3 en: 10 Marzo 2009, 02:59 am »

hola fijate esto es mucho mejor

agrega un WindowsMediaPlayer1 (el de la ultima versión) y un timer1

Código:
Option Explicit
'By Leandro Ascierto
Private Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" (ByVal uAction As Long, ByVal uParam As Long, ByVal lpvParam As Any, ByVal fuWinIni As Long) As Long
Private Declare Function SetSysColors Lib "user32.dll" (ByVal nChanges As Long, ByRef lpSysColor As Long, ByRef lpColorValues As Long) As Long
Private Declare Function GetSysColor Lib "user32.dll" (ByVal nIndex As Long) As Long
Private Const COLOR_BACKGROUND As Long = 1
Private Const SPIF_UPDATEINIFILE As Long = &H1
Private Const SPIF_SENDWININICHANGE As Long = &H2
Private Const SPI_GETDESKWALLPAPER As Long = 115
Private Const SPI_SETDESKWALLPAPER As Long = 20
Dim lOldColor As Long
Dim sOldWallPaper As String

Private Sub Form_Load()
    Me.Visible = False
    Me.Move 0, 0, Screen.Width, Screen.Height
    sOldWallPaper = Space(255)
    SystemParametersInfo SPI_GETDESKWALLPAPER, 255, sOldWallPaper, 0
    lOldColor = GetSysColor(COLOR_BACKGROUND)

    Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, " ", 0)
    Call SetSysColors(1, COLOR_BACKGROUND, RGB(16, 0, 16))
   
    WindowsMediaPlayer1.Move 0, 0, Screen.Width, Screen.Height
    WindowsMediaPlayer1.URL = "http://tn.com.ar/vivo/metafile.asx"
    WindowsMediaPlayer1.stretchToFit = True
    Timer1.Interval = 1000
End Sub




Private Sub Timer1_Timer()
Static x As Long
x = x + 1
If x = 100 Then

Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, sOldWallPaper, 0)
Call SetSysColors(1, COLOR_BACKGROUND, lOldColor)
Unload Me
End If
End Sub

Saludos
En línea

Karcrack


Desconectado Desconectado

Mensajes: 2.416


Se siente observado ¬¬'


Ver Perfil
Re: obtener el hDC que contiene la imagen del fondo de escritorio
« Respuesta #4 en: 10 Marzo 2009, 17:09 pm »

Código
  1. Private Const HWND_DESKTOP As Long = 0
  2.  
  3. Private Declare Function GetWindowDC Lib "user32.dll" (ByVal hwnd As Long) As Long
  4.  
  5. Sub Main()
  6.    Debug.Print GetWindowDC(HWND_DESKTOP)
  7. End Sub
  8.  

Bueno, esto es por lo que preguntabas no?

Aunque el ejemplo de Leandro es todavia mejor, lastima que necesites el WMP :P

Saludos ;)
En línea

el_c0c0


Desconectado Desconectado

Mensajes: 307


Ver Perfil
Re: obtener el hDC que contiene la imagen del fondo de escritorio
« Respuesta #5 en: 10 Marzo 2009, 17:14 pm »

Código
  1. Private Const HWND_DESKTOP As Long = 0
  2.  
  3. Private Declare Function GetWindowDC Lib "user32.dll" (ByVal hwnd As Long) As Long
  4.  
  5. Sub Main()
  6.    Debug.Print GetWindowDC(HWND_DESKTOP)
  7. End Sub
  8.  

Bueno, esto es por lo que preguntabas no?

Aunque el ejemplo de Leandro es todavia mejor, lastima que necesites el WMP :P

Saludos ;)

podes hacer createobject en ese caso. en fin, lo de leandro funciona porque ese color reemplaza por algun motivo al video (?)
pero bueno, el quiere sacar el dc del objeto ListView SUPONGO!

saludos
En línea

'-     coco
"Te voy a romper el orto"- Las hemorroides
LeandroA
Moderador
***
Desconectado Desconectado

Mensajes: 760


www.leandroascierto.com


Ver Perfil WWW
Re: obtener el hDC que contiene la imagen del fondo de escritorio
« Respuesta #6 en: 10 Marzo 2009, 18:57 pm »


Aunque el ejemplo de Leandro es todavia mejor, lastima que necesites el WMP :P

Saludos ;)

Hola no es nesesario el WMP se puede hacer con MCI puse el WMP para poder mostrar el ejemplo con un avi en una web, y ademas por vagancia, despues voy a ver si puede poner un ejemplo mas completito usando MCI

Saludos
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines