トップ 差分 一覧 ソース 検索 ヘルプ PDF RSS ログイン

C#/ActiveX

この Wiki の内容を https://cms.shise.net/ に移行中です。
一部の情報は非常に古いもの(15年以上前〜)ですので、利用する際はご注意ください(Java 1.4 とか .NET 1.0 とか、Windows 2000 とか)
お問い合せは wiki@shise.net まで。Gmail に転送されるので、スパムは全部カットされます。


 

概要



ここの情報は、だいぶ古いです。



ブラウザ上のHTMLで実行されるActiveXの作り方についてのメモ。
簡単に言うと、.NET版アプレットみたいな?

なお、ActiveX って感じなので、当然ながら IE でしか動作しない。

手順

Visual Studio .NET 2003 を立ち上げる。

ファイル → 新規作成 → プロジェクト
(C#などの言語選択) → Windows コントロールライブラリ → 「OK」

適当にWindows フォームを貼り付ける。
そしてコンパイル。

できたDLLが「WindowsControlLibrary1.dll」だったら、以下のようなHTMLを書くことでActiveX コントロールとして使える。

<OBJECT
CLASSID="WindowsControlLibrary1.dll#WindowsControlLibrary1.UserControl1"
ID="UserControl1"
WIDTH="150"
HEIGHT="150">
</OBJECT>

CLASSID の部分は、「ファイル名(URL?)#名前空間.クラス名」という風に指定する。
「84D9D27A-DEFD-4912-9E69-CE0A44583575」とか、そういう系では動かないっぽい?

備考

セキュリティーきついので、ローカルにアクセスしたりしようとすると、例外が発生し実行できない。
署名とかすれば実行できるかも?
マシン側で信頼するように設定しないと無理かも。

---追記
よくわからんが、ローカルに置いたファイルだと動作しない?
Web 上に置くと動作する。

更新した場合は、リロードでは読み直されないっぽい。
ブラウザの再起動が必要。

当然、.NET Framework は必要。
http://www.microsoft.com/downloads/details.aspx?familyid=0856EACB-4362-4B0D-8EDD-AAB15C5E04F5&displaylang=ja