我根据VCKBASE上的例程来做些实验.
http://www.vckbase.com/document/viewdoc.asp?id=218
结果正常,但我想让程序实现可以设定文件作为桌面不可.为何?
代码如下:
void Set(CString picstrFilename)
{
WALLPAPEROPT Wallpaperopt;
unsigned short l_usFilename[MAX_PATH];
for(int i = 0 ; i < picstrFilename.GetLength(); i++)
{
l_usFilename[i] = picstrFilename.GetAt(i);
}
l_usFilename[i] = 0;
Wallpaperopt.dwSize = sizeof(Wallpaperopt);
Wallpaperopt.dwStyle = WPSTYLE_CENTER;
if(m_pIActiveDesktop->SetWallpaperOptions(&Wallpaperopt,0) == S_OK)
AfxMessageBox("SetWallpaperOptions OK");
if(m_pIActiveDesktop->SetWallpaper(l_usFilename,0) == S_OK)
AfxMessageBox("SetWallpaper OK");
}结果证明是是弹出两个对话框的,说明返回的结果是对的呀.但事实上桌面并未改变.谢谢!
http://www.vckbase.com/document/viewdoc.asp?id=218
结果正常,但我想让程序实现可以设定文件作为桌面不可.为何?
代码如下:
void Set(CString picstrFilename)
{
WALLPAPEROPT Wallpaperopt;
unsigned short l_usFilename[MAX_PATH];
for(int i = 0 ; i < picstrFilename.GetLength(); i++)
{
l_usFilename[i] = picstrFilename.GetAt(i);
}
l_usFilename[i] = 0;
Wallpaperopt.dwSize = sizeof(Wallpaperopt);
Wallpaperopt.dwStyle = WPSTYLE_CENTER;
if(m_pIActiveDesktop->SetWallpaperOptions(&Wallpaperopt,0) == S_OK)
AfxMessageBox("SetWallpaperOptions OK");
if(m_pIActiveDesktop->SetWallpaper(l_usFilename,0) == S_OK)
AfxMessageBox("SetWallpaper OK");
}结果证明是是弹出两个对话框的,说明返回的结果是对的呀.但事实上桌面并未改变.谢谢!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货