有关IActiveDesktop的问题,请各位高手出马。呵呵能解决问题就是高手哈。。(100分)

  • 主题发起人 主题发起人 hpretty
  • 开始时间 开始时间
H

hpretty

Unregistered / Unconfirmed
GUEST, unregistred user!
procedure TForm1.Button4Click(Sender: TObject);
var
ADeskTop:IActiveDesktop;
wallpaper:PwideChar;
s :TShComponent;
url :String;
addResult :HRESULT ;
fName :WideString;
NCount:Integer;
//compDesktopItem :compDesktopItem;
comps: _tagCOMPONENTSOPT ;
begin
ADeskTop:=CreateComObject(CLSID_ActiveDesktop) as IActiveDesktop;

url :='c:/temp.jpg';
s.dwSize := sizeof(TShComponent);
s.dwID :=0;
s.fDirty := false;
s.fNoScroll := true;
fName :=' 测试桌面项';
StringToWideChar(fname,s.wszFriendlyName,length(fname));
StringToWideChar(url,s.wszSubscribedURL,length(url));
s.fChecked := true;
adesktop.ApplyChanges(AD_APPLY_ALL);
adesktop.GetDesktopItemCount(NCount,0);
caption := IntToStr(ncount);
addResult := adesktop.AddDesktopItem(s,0);
//这儿的结果就是错的。不报错。就是下面的等式不成立
//我的系统是WINDOWS XP SP2
if ( addResult =S_OK ) then
adesktop.ApplyChanges(AD_APPLY_ALL);
 
低手只能帮顶
 
有没有人帮我看看呀.
 
后退
顶部