![]() |
|
|
|
|
#1
|
||||
|
||||
|
Код:
procedure TFavoritesMenu.AddFavorite(Sender: TObject);
var
ShellUIHelper: ISHellUIHelper;
Url, Title: Olevariant;
begin
if Assigned(FWebbrowser) then begin
Title := FWebbrowser.LocationName;
Url := FWebbrowser.LocationUrl;
if Url <> '' then begin
CoCreateInstance(CLSID_SHELLUIHELPER, nil, CLSCTX_INPROC_SERVER,
IID_IShellUIHelper, ShellUIHelper);
ShellUIHelper.AddFavorite(Url, Title);
RebuildMenu;
end
else Showmessage('No URL selected.');
end else
Showmessage('No Webbrowser connected to Favorites-menu.');
end;кто может подсказать в чем проблема (код не мой) |
|
#2
|
||||
|
||||
|
Код:
{
Delphi функция Assigned проверяет является ли указатель nil. Если не nil, то возвращает True; если nil, то False.
}
if Assigned(FWebbrowser) then beginСоответственно FWebBrowser у вас не создан (т.к. он сейчас = nil)... |
|
#3
|
||||
|
||||
|
он создан.
|
|
#4
|
||||
|
||||
|
Тогда пишите так:
Код:
procedure TFavoritesMenu.AddFavorite(Sender: TObject);
var
ShellUIHelper: ISHellUIHelper;
Url, Title: Olevariant;
begin
Title := FWebbrowser.LocationName;
Url := FWebbrowser.LocationUrl;
if Url <> '' then begin
CoCreateInstance(CLSID_SHELLUIHELPER, nil, CLSCTX_INPROC_SERVER,
IID_IShellUIHelper, ShellUIHelper);
ShellUIHelper.AddFavorite(Url, Title);
RebuildMenu;
end
else Showmessage('No URL selected.');
end; |
|
#5
|
||||
|
||||
|
ошибка так вылетает
|
|
#6
|
||||
|
||||
|
Ошибка вылетает потому что FWebBrowser = nil!!!
|