Desktop控制第二部分 - Hook Desktop

本文介绍了如何Hook Desktop,包括设置Desktop背景图的方法,Hook的原因和实现方式,以及探讨了在Hook中创建Web browser对象的可能性。同时,文章提及了通过Hook explorer显示图像的技术,并鼓励读者在遇到相关问题时留言或加入技术群交流。
摘要由CSDN通过智能技术生成

本来今天平安夜,我是要来写点东西的,结果发现上回的文章(Desktop控制第一部分)没有人注意,
也没有人有留言, 故信心大减.

但我还是把: Desktop背景图设置整理一下.

另外再讲一下: Hook Desktop 后的方便, 以及Hook Desktop 的实现原理.


1. Desktop背景图设置
由于上一篇文章没有讲的很细致, 这回补充说明一下.

下面的代码是基于VC6 MFC的. 额外使用类: CDVReg 设置注册表健值, 这个大家可以自己实现. 这里不再提供.

 

BOOL SetBackImage(LPCTSTR lpszImage)
{
 
if ! lpszImage  ||   0   ==  lstrlen( lpszImage ) )
  
return  TRUE;

      CString strSubKey 
=   "" ;
  

 
//  下面代码找到当前用户的KEY值, 如: S-1-5-21-329068152-1788223648-839522115-500
 HKEY keyUsers  =  NULL;
 
for int  i  =   0 ; i  <   24 ; i  ++  )
 {
  DWORD dwRet 
=  RegEnumKey( HKEY_USERS, 
   i,
   strSubKey.GetBuffer( 
256  ),
   
256  );
  strSubKey.ReleaseBuffer();

  
if ( ERROR_SUCCESS  ==  dwRet )
  {
   CString strCheck 
=  strSubKey  +   " /Software/Microsoft/Internet Explorer/Desktop/General " ;
   
   HKEY hKeySub 
=  NULL;
   
if ( ERROR_SUCCESS  ==  RegOpenKey( HKEY_USERS, strCheck,  & hKeySub ) )
   {
    RegCloseKey( hKeySub );
    
break ;
   }
  }
  
else
  {
   strSubKey 
=   "" ;
   
break ;
  }

  strSubKey 
=   "" ;
 }


 
if ( strSubKey.IsEmpty() )
  
return  FALSE;

 CString strWallPaper 
=  lpszImage;
 CString WallpaperStyle 
=   " 2 " ;   //  风格


 
//  1. 
 CString strPath  =   " Control Panel/Desktop " ;
 CString strField 
=
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值