谁能解释一下这两段Dephi代码(作用:打开IE添加收藏和管理收藏夹对话框)的原理,并将其翻译为C++ Builder语言,多谢了!!!

abedon 2000-06-06 03:23:00
谁能解释一下这两段Dephi代码(作用:打开IE添加收藏和管理收藏夹对话框)的原理,并将其翻译为C++ Builder语言,多谢了!!!


const
CLSID_ShellUIHelper: TGUID = '{64AB4BB7-111E-11D1-8F79-00C04FC2FBE1}';

procedure TForm1.OrganizeFavorites1Click(Sender: TObject);
var
H: HWnd;
p: procedure(Handle: THandle; Path: PChar); stdcall;
begin
H := LoadLibrary(PChar('shdocvw.dll'));
if H <> 0 then
begin
p := GetProcAddress(H, PChar('DoOrganizeFavDlg'));
if Assigned(p) then p(Application.Handle, PChar(Favorites1.Hint));
end;
FreeLibrary(h);
end;



procedure TForm1.AddtoFavorites1Click(Sender: TObject);
var
ShellUIHelper: ISHellUIHelper;
url, title: Olevariant;
begin
Title := EmbeddedWB1.LocationName;
Url := EmbeddedWB1.LocationUrl;
if Url <> '' then
begin
ShellUIHelper := CreateComObject(CLSID_SHELLUIHELPER) as IShellUIHelper;
ShellUIHelper.AddFavorite(url, title);
end;
end;
...全文
99 1 打赏 收藏 举报
写回复
1 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
nationphone 2000-06-07
你既然用C++BUILDER, 对OBJECTPASCLA应该不会陌生,我建议你看看随C++BUILDER 带的帮助object pascal reference,
你的程序中调用了两个函数:'shdocvw.dll'中的DoOrganizeFavDlg,
另一个是个COM对象{64AB4BB7-111E-11D1-8F79-00C04FC2FBE1},
调用了安的方法AddFavorite(url, title);
这个方法是IShellUIHelper接口定义的。
  • 打赏
  • 举报
回复
相关推荐
发帖
C++ Builder
加入

1.3w+

社区成员

C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
申请成为版主
帖子事件
创建了帖子
2000-06-06 03:23
社区公告
暂无公告