nasec blog

プログラミングやPCについての覚え書き
SEARCH
PROFILE
北陸で働くSIer。主にWEB系。
効率化と情報共有を常に模索中。。
音ゲーが好きです。
好奇心旺盛で興味のあるものは何でも飛びつきます!
RECOMMEND
CATEGORIES
ARCHIVES
RECENT COMMENT
  • mkdirで作成したディレクトリに作成と同時に移動する
    h41k4 (04/22)
  • とぅ
    h41k4 (04/22)
  • mkdirで作成したディレクトリに作成と同時に移動する
    totoro (03/30)
  • Xperiaでファイルのダウンロードに失敗する
    h41k4 (12/14)
  • Xperiaでファイルのダウンロードに失敗する
    きむら (12/14)
  • Xperiaでファイルのダウンロードに失敗する
    h41k4 (12/01)
  • Xperiaでファイルのダウンロードに失敗する
    きむら (12/01)
  • 指定したデバイス、パス、またはファイルにアクセスできません。適切なアクセス許可がない可能性があります。
    ゆう (03/16)
  • ネットマーブル(チョコマ)のパズル「ボタン」
    Yero (03/12)
RECENT TRACKBACK
  • 指定したデバイス、パス、またはファイルにアクセスできません。適切なアクセス許可がない可能性があります。
    プレサーチ (11/19)
ブログパーツ
フィードメーター - nasec blog
OTHERS
SPONSORED LINKS
みんなのブログポータル JUGEM
スポンサーサイト

一定期間更新がないため広告を表示しています

| - | | - | - |
C#でIEツールバーを作成
C#でIEのツールバーを作成しようと思い、参考サイトで調べていましたが、素人には難しく一筋縄には行きませんでした。
そこで、作成の手順をメモしておこうと思います。

BandObjectLibを入手

まず、codeprojectのサイトからBandObjectのソースファイル(dotnetBandObjects_src.zip)をダウンロードし、
解凍しておきます。(英語のサイトで、会員登録が必要です。)

次に、フォルダの中の「BandObjectLib」というフォルダから、「BandObjectLib.sln」をVisualStdioで開きます。
すると、
プロジェクトを、このバージョンの Visual Studio .NET で使用されている形式に変換しなければなりません。
(〜中略〜)
このソリューションとすべてのプロジェクトを変換しますか?

というダイアログが出てきますので「はい」を押します。
出来たら、リリースでビルドします。(重要)デバッグですると、不具合が起こります。

ツールバーをGACとレジストリに登録

ビルドが正常終了したらGACとレジストリに登録します。
コマンドプロンプトでこのプロジェクトのフォルダのリリースフォルダ(dotnetBandObjects_src¥BandObjectLib¥bin¥Release)
に移動します。

「gacutil /if BandObjectLib.dll」と入力し、Enterを押します。※1
エラーが出なければ「Assembly successfully added to the cache」と表示されますので、
続けて「regasm SampleBars.dll BandObjectLib.dll」と入力、※2 Enterを押します。
上手くいけば、「型は正常に登録されました。」とメッセージが出るので、これで完了です。



※1 ここで「'gacutil' は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
というエラーが出る場合、パスが通っていないと考えられます。
(例)「C:¥Program Files¥Microsoft Visual Studio .NET 2003¥SDK¥v1.1¥Bin¥gacutil.exe /if BandObject.dll」とフルパスで入力してやるか、
マイコンピュータのアイコンを右クリック→プロパティ→詳細設定→環境変数→システム環境変数→Path→編集で変数値に
(例)「C:¥Program Files¥Microsoft Visual Studio .NET 2003¥SDK¥v1.1¥Bin¥」を追加してパスを通してください。

※2 regasmも同様にパスが通っていない場合、(例)「C:¥WINDOWS¥Microsoft.NET¥Framework¥v1.0.3705¥regasm.exe BandObjectLib.dll」とフルパスで入力するか
(例)「C:¥WINDOWS¥Microsoft.NET¥Framework¥v1.0.3705¥」へのパスを通して下さい。

なお、パスは私の場合の例ですので、適宜自分の環境に読み替えて下さい。


サンプルのビルドと登録

次にサンプルを動かします。
dotnetBandObjects_srcフォルダに同梱されている「SampleBars」フォルダから「SampleBars.sln」を開くと先ほどと同様に「・・変換しますか?」というダイアログが出てくるので「はい」を選択し、デバッグでビルドします。

こちらも正常に終わりましたら、コマンドプロンプトを起動してください。
コマンドプロンプトでこのプロジェクトのフォルダのデバッグフォルダ(dotnetBandObjects_src¥SampleBars¥bin¥Debug)に移動します。

「gacutil /if SampleBars.dll」と入力し、Enterを押します。
エラーが出なければ、続けて「regasm SampleBars.dll」と入力、Enterを押します。
上手くいけば、「型は正常に登録されました。」とメッセージが出るので、これで完了です。

ツールバーを表示

IEを再起動し、表示→ツールバーのリストを見てください。
「Hello World Bar」がありますので、チェックを入れるとツールバーが起動します。
写真のように表示されればOKです。



アンインストール

なお、アンインストールするには、まずコマンドプロンプトで
サンプルプロジェクトのデバッグに移動してから「gacutil /u SampleBars」
と入力し、成功したら「successful = 1」というような表示がでますので
「regasm /u SampleBars.dll」と打ちます。
「型は正常に解除されました」というような事が表示されればOKです。
このときIEは終了しておいて下さい。

続いてコマンドプロンプトでBandObjectのリリースフォルダに移動、同様に
「gacutil /u BandObjectLib」
「regasm /u BandObjectLib.dll」
と入力し、無事アンインストール完了です。

免責と参考サイト

※全てにおいて自己責任でお願いします。
ツールバーが消えなくなったりしても責任は取れません。
素人が適当に書いたものなので変なところがあると思います。

※.NETのメニュー→ツールのコマンドプロンプトを使えばパスを通す必要がないらしいですが、
どこにあるか分かりませんでした。分かる方はそれを使えばいいと思います。

参考:
「IE ToolbarをC#で作る」
http://mobiquitous.com/programming/ietoolbar.html
「Extending Explorer with Band Objects using .NET and Windows Forms - The Code Project - C# Programming」(海外サイト)
http://www.codeproject.com/csharp/dotnetbandobjects.asp

※08/02/06 一部情報が間違っていたため編集しました。
| C# | 14:18 | comments(0) | trackbacks(0)