用下面的函数改变桌面背景:
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
但是桌面背景用上面第一个函数改变后(桌面背景表面上已经改变) 用第二个函数显示当前桌面背景的却是没有改变的还是原来的我哪个函数不对????
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
但是桌面背景用上面第一个函数改变后(桌面背景表面上已经改变) 用第二个函数显示当前桌面背景的却是没有改变的还是原来的我哪个函数不对????
解决方案 »
- VB Access SQL2000数据库问题!在线等!谢谢
- 怎么实现 WINSOCK通信的 局域网调试呢?
- mysql数据库中不能写入图片的问题还是未解决
- 键盘记录器
- 如何获得ADODB控件!
- 如果将用VB写出高效率的ActiveX DLL来在ASP中使用
- 二维坐标排序问题,不知道以前有没有人想过,能不能给我一个思路
- GIF动画能直接显示在VB窗口中吗???
- 有关SQL语句,请高手指点。谢谢!
- 可恶的老外,这么好的控件(ICONMENU)竟然不支持中文,请高手解决!!!!!!!!
- (关于数据库编程)不同窗口之间 是否可以访问同一个ado的recordset对象
- 求 VB连接MYSQL 5.0方法...
你是看的HKEY_CURRENT_USER\Control Panel\Desktop?
*****************************************************************************
欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) http://feiyun0112.cnblogs.com/