社本@元ネオニート Blog

社本@元ネオニート (元々ワック) のいたずら書き (for Programmers)

AILight Banner
AILight Blog

プロフィール

社本@元ネオニート Blog
働いたら負けかなと思っていたのですが。。とうとう働き始めました。アメリカのシアトル・エリアにある企業向けのバックアップソフトを開発している会社です。日本人は私だけ。なんとか。。やっていけてるようです。

目次

Blog 利用状況

記事分類

過去の記事

タグ

IE7の中からのプロセスの作成 その5 - Windows Vista/Internet Explorer 7

> > > 前回の記事では、単純に説明してしまいましたが、
> > > プロセスの起動は、実行ファイルごとにポリシー値を
> > > レジストリに設定することによって、制御できます。
> >
> > 簡単に登録/解除を行うための関数を整備してみました。
>
> このレジストリにある設定なのですが、プロセスを作成する際に
> 全てを列挙しているわけではなく、どうやら登録の単位となる
> GUIDをキャッシュしているようです。
>
> そのため、IEが起動している最中は、登録や削除しても反映されません。
> 中途半端に、GUIDだけキャッシュなんてしないで、全部キャッシュするか
> 全部読み直すかしてくれれば、納得なんですけどね。

昨日、公開されたばかり(!) の IERefreshElevationPolicy API を使えば、
この問題を解決できそうです。

---
static HRESULT Probe_IERefreshElevationPolicy()
{
 CModule module;

 HINSTANCE hInst = module.LoadLibrary(_T("ieframe.dll"));
 if (hInst == NULL)
 {
  return E_NOTIMPL; 
 }

 typedef HRESULT (WINAPI *FUNC_IEREFRESHELEVATIONPOLICY)();
 CString strProcName = _T("IERefreshElevationPolicy");
 FUNC_IEREFRESHELEVATIONPOLICY func = (FUNC_IEREFRESHELEVATIONPOLICY)module.GetProcAddress(strProcName);
 if (func == NULL)
 {
  return E_NOTIMPL; 
 }

 return (*func)();
}
---

■IE7の中からのプロセスの作成 その4 - Windows Vista/Internet Explorer 7 - 社本@ワック
http://www.ailight.jp/blog/sha256/archive/2007/02/26/13611.aspx

■New API Smoothes Extension Development in Protected Mode - IEBlog
http://blogs.msdn.com/ie/archive/2007/06/13/new-api-smoothes-extension-development-in-protected-mode.aspx

■DLLを扱うクラス (CModule) - for Programmers
http://www.wac-jp.com/programmers/win32/Module.html

投稿日時 : 2007年6月14日 13:57


コメントを追加

タイトル
名前
URL
コメント