Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.08.08;
Скачать: CL | DM;

Вниз

Вызов диалога свойств интернета   Найти похожие ветки 

 
Smok_er   (2002-07-27 13:36) [0]

Уважаемые мастера!
Подскажите пожалуйста способ вызвать из программы сабж. Если я делаю это таким методом:

procedure TfrMain.actInetOptionsExecute(Sender: TObject);
const
CGID_WebBrowser: TGUID = "{ED016940-BD5B-11cf-BA4E-00C04FD70816}";
var
CmdTarget : IOleCommandTarget;
vaIn, vaOut: OleVariant;
PtrGUID: PGUID;
begin
New(PtrGUID);
PtrGUID^ := CGID_WebBrowser;
with TEmbeddedWB(PageControl1.ActivePage.FindComponent("WB")) do
begin
if Document <> nil then
try
Document.QueryInterface(IOleCommandTarget, CmdTarget);
if CmdTarget <> nil then
try
CmdTarget.Exec( PtrGUID, HTMLID_OPTIONS, 0, vaIn, vaOut);
finally
CmdTarget._Release;
end;
except
end;
Dispose(PtrGUID);
end;
end;


Недостатком данного метода является то, что для вызова диалога необходимо связать его с браузером. Интересно, как это сделать без необходимости наличия браузера?


 
int64 ©   (2002-07-27 14:24) [1]

Зачем вырезать гланды через ...
Этот диалог "находится" в Панели управления. :)

ShellExecute(Application.Handle, nil,"inetcpl.cpl",nil,nil,SW_SHOWNORMAL);


 
Smok_er   (2002-07-27 15:41) [2]

Попробовал...
Вместо диалога вылез ресторатор.
дело в том, что он ассоциирован с файлом "cpl" :(

Есть другие предложения?


 
Smok_er   (2002-07-27 15:44) [3]

Кстати, желательно также узнать, как вызвать этот диалог таким образом, чтобы сразу открылась определенная вкладка, т.е. не General, а Advanced например...


 
tsarevep ©   (2002-07-27 21:36) [4]

Если у вас за CPL отвечает REstarator то............? А как тогда у вас все остальное открывается Дата и время например?


 
Billy ©   (2002-07-27 22:41) [5]

У большенства людей файлы cpl ни с чем не ассоциированы. Запустить апплет панели приложения можно так:
control.exe applet_name.cpl . То же можно проделать с помощью ShellExecute. Успехов.


 
Smok_er   (2002-07-28 14:59) [6]

Спасибо большое!
Этот диалог и все остальное скорее всего открывается методом, предложенным Billy (кстати, великолепно работает - спасибо Billy). А вот как вызвать определенную вкладку этого диалога, видимо никто не знает. Нигде не могу найти ответ на этот вопрос.


 
Юрий Зотов ©   (2002-07-28 16:09) [7]

Вариант, наверное, не лучший, но работать должен - после запуска и активизации диалога найти окно Tab control"а на нем и послать ему TCM_SETCURSEL.


 
Макс Черных ©   (2002-07-28 20:50) [8]

Слать TCM_SETCURSEL можно, но, пожалуй, не не нужно.

Все делается очень просто:

ShellExecute(Application.Handle, nil,"Control.exe",
"inetcpl.cpl,@0,6",nil,SW_SHOWNORMAL);


Циферка 6 в данном случае и есть нужная страница. В XP это:
Internet properties - Advanced.

В MSDN это расписано в статье:
HOWTO: Start a Control Panel Applet in Windows 95 or Later



 
Smok_er   (2002-07-29 00:43) [9]

Большое спасибо!



Страницы: 1 вся ветка

Текущий архив: 2002.08.08;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.017 c
3-23920
novill
2002-07-16 11:52
2002.08.08
Как динамически добавлять вычислимые поля в DBgrid


1-24069
KIR
2002-07-26 11:40
2002.08.08
Как вычислить какое окно активно


14-24197
Igor_thief
2002-07-13 14:11
2002.08.08
Народ, как часто вы используете/пишите dll файлы в своих прогах?


14-24201
[nex] aka Counterfeiter
2002-07-12 01:15
2002.08.08
Internationalisation


4-24271
DeMoN-777
2002-06-02 03:31
2002.08.08
Элементы листбокса чужой программы.