border

Miembros:
Mensajes:
Temas:
Online:

Ultimo Miembro:

 
 

Cuenta Bancaria en EEUU
  #1 (permalink)  
Antiguo 20-02-2008, 20:06:47
Junior Member
Site Admin
 
Registrado: feb 2008
Posts: 12
alvedel Valoración +2
Predeterminado cambiar fondo escritorio

Hola, estoy intentando cambiar el fondo de escritorio con visual basic 2005, y he probado este codigo y no consigo ke funcione.

Public Class Extras

Private Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" (ByVal uAction As Long, ByVal uParam As Long, <System.Runtime.InteropServices.MarshalAsAttribute (System.Runtime.InteropServices.UnmanagedType.AsAn y)> ByVal lpvParam As Object, ByVal fuWinIni As Long) As Long

Private Sub fondo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles fondo.Click

Dim fallo As Long
fallo = SystemParametersInfo(20, 0, "C:a.bmp", 0)
End Sub

Me da el siguiente error al leer la linea fallo=Systemparame.... ... ...

Una llamada a la función PInvoke 'Concesionario!Concesionario.Extras::SystemParamet ersInfo' impidió la correspondencia de la pila. Es posible que la razón sea que la firma PInvoke administrada no coincida con la firma de destino no administrada. Compruebe que la convención y los parámetros de llamada de la firma PInvoke coinciden con la firma no administrada de destino.

Alguien puede ayudarme?

PD: Tambien he probado con
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

y me da error el "as any"
Responder Con Cita
  #2 (permalink)  
Antiguo 21-02-2008, 01:27:15
Avatar de seba123neo
Moderador
 
Registrado: nov 2007
Ubicación: Argentina
Posts: 388
seba123neo Valoración +2
Predeterminado

Hola,mira este ejemplo es del guille:

Código:
Public Class Form1
    Private Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" (ByVal uAction As Integer, ByVal uParam As Integer, ByRef lpvParam As Object, ByVal fuWinIni As Integer) As Integer
    Const SPIF_UPDATEINIFILE = &H1
    Const SPI_SETDESKWALLPAPER = 20
    Const SPIF_SENDWININICHANGE = &H2

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim FileName As String
        Dim X As Long

        FileName = "c:\windows\pinstripe.bmp"

        X = SystemParametersInfo(SPI_SETDESKWALLPAPER, 0&, FileName, SPIF_UPDATEINIFILE Or SPIF_SENDWININICHANGE)

        MsgBox("Wallpaper Cambiado")
    End Sub
End Class
saludos.
__________________
Todos somos ignorantes; lo que pasa es que no todos ignoramos las mismas cosas - Albert Einstein
Responder Con Cita
  #3 (permalink)  
Antiguo 21-02-2008, 18:43:50
Junior Member
Site Admin
 
Registrado: feb 2008
Posts: 12
alvedel Valoración +2
Predeterminado

Gracias seba123neo, al final modificando cosas k ni sikiera entendia lo he solucionado:

Private Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" (ByVal uAction As Integer, ByVal uParam As Integer, ByVal lpvParam As String, ByVal fuWinIni As Integer) As Long

Private Sub fondo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles fondo.Click
Dim fallo As String
Dim ruta As String
ruta = "c:\a.bmp"
fallo = CStr(SystemParametersInfo(20, 0, ruta, 0)) 'solo funciona con imagenes .bmp
End Sub
Responder Con Cita
  #4 (permalink)  
Antiguo 23-02-2008, 10:46:08
Junior Member
Site Admin
 
Registrado: dic 2007
Posts: 3
khiloko Valoración +2
Predeterminado

hola, mi problema es que despues de usar y manipular el codigo no me funcionaba el doble click para abrir un programa o para acceder a una carpeta, no se si a podido ser el que halla manipulado el codigo por antes de eso me iba perfectamente y despues no me iba, mi pregunta es que si a podido ocurrir a causa de eso y, aunque este no sea el lugar del foro donde deberia poner esto, como solucionarlo.
Responder Con Cita
Respuesta


Herramientas
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Trackbacks are habilitado
Pingbacks are habilitado
Refbacks are habilitado


Temas Similares
Tema Autor Foro Respuestas Último Mensaje
Cambiar color de fondo a un Toolbar jose sanches Visual Basic 6.00 2 24-08-2007 21:58:51
AIR - Reloj de escritorio maxonico Aplicaciones Ofrecidas o Solicitadas 3 26-06-2007 15:42:07
Como puedo cambiar el fondo a JPanel que tiene LookAndFeel jrios03 JAVA (General) 0 01-02-2007 20:02:41
borrar ip. del escritorio remoto jmartinym Sistemas Operativos 0 14-06-2006 05:49:09
Cambiar color de fondo del datagrid saroaes21 Visual Basic 6.00 1 05-05-2005 17:16:13


La franja horaria es GMT. Ahora son las 01:26:41.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO 3.1.0
A vBSkinworks Design

Alojado en el servicio Premium de Masquewebs | Diseño mejorado por MasqueWebs

right