当前位置:编程学习 > VB >>

vb 请高手帮忙关于设置桌面背景,急急急。。。在线等。。。

用下面的函数改变桌面背景:
Const SPI_SETDESKWALLPAPER = 20
Const SPIF_UPDATEINIFILE = &H1
Const SPIF_SENDWININICHANGE = &H2
Call SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, "c:\deskTop.bmp", SPIF_UPDATEINIFILE Or SPIF_SENDWININICHANGE)
用下面的函数读当前桌面背景:
Public Function getvalue(ByVal ip As Long, KeyName As String, valuename As String) As String

     Dim retval As Long
     Dim hKey As Long
     Dim valuesetting As Variant
     Dim cddata As Long
     Dim lvalue As Long
     Dim svalue As String
     Dim lvaluetye As Long
     retval = RegOpenKeyEx(ip, KeyName, 0, KEY_ALL_ACCESS, hKey)
     
    If retval > 0 Then
      getvalue = ""
      Exit Function
    End If
    
    retval = RegQueryValueEx(hKey, valuename, 0, lvaluetype, ByVal vbNullString, cddata)
   If retval <> 0 Then
     RegCloseKey hKey
    Exit Function
   End If
  Select Case lvaluetype
        Case REG_SZ
              svalue = String(cddata, Chr(0))
              RegQueryValueEx hKey, valuename, 0, lvaluetype, ByVal svalue, cddata
              valuesetting = Left$(svalue, cddata)
             getvalue = CStr(valuesetting)
       Case REG_DWORD
             RegQueryValueEx hKey, valuename, 0, lvaluetype, lvalue, cddata
             valuesetting = lvalue
            getvalue = CStr(valuesetting)
    End Select
End Function
但是桌面背景用上面第一个函数改变后(桌面背景表面上已经改变) 用第二个函数显示当前桌面背景的却是没有改变的还是原来的。。。我哪个函数不对???? --------------------编程问答-------------------- 我顶》》》 --------------------编程问答-------------------- 没问题呀
你是看的HKEY_CURRENT_USER\Control Panel\Desktop?
  
*****************************************************************************
欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) 

http://feiyun0112.cnblogs.com/ --------------------编程问答-------------------- 是不是c:\deskTop.bmp不存在 --------------------编程问答-------------------- 存在 当然存在 因为桌面背景已经改变了 只是用第二个函数查看的时候,读出的是原来的桌面背景路径 --------------------编程问答-------------------- 第二个函数调用的是getvalue(HKEY_CURRENT_USER, "Control Panel\Desktop", "ConvertedWallpaper") --------------------编程问答-------------------- 你那是活动桌面,SystemParametersInfo是设普通的桌面WallPaper --------------------编程问答-------------------- 我已经解决了 虽然你的答案没什么用 还是把100分给你呀 呵呵 --------------------编程问答--------------------
补充:VB ,  API
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,