VS2008のC#にて簡単なWindowsコントロールライブラリのdllを作成し、

IE8で動作させようとしています。
xamppにてapacheを起動しlocalhostへのアクセスだと正しく動作しますが、
外部のwebサーバーだと表示されません。
キャッシュをみるとdllはダウンロードされていました。

以下の設定を行っています。
①コントロールパネルの.NET Framework 2.0 ConfigurationでTrust_ZoneをFullTrustに設定
②IEのインターネットオプションで信頼サイトに追加
③ウィルスソフトは無効

どうすれば外部サーバーで動作することができるか教えていただけますでしょうか。

■C#(一部)
public partial class UserControl1 : UserControl
{
public UserControl1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{
label1.Text = "Hello World";
}

}

■HTMLソース
<object id="fuga" height="150" width="150"
classid="http:WindowsFormsControlLibrary1.dll#WindowsFormsControlLibrary1.UserControl1">
ご利用のブラウザでは,.NET Frameworkがサポートされていません。
</object>

回答の条件
  • 1人2回まで
  • 13歳以上
  • 登録:2010/11/05 01:05:31
  • 終了:2010/11/06 01:31:22

ベストアンサー

id:todo36 No.2

todo36回答回数34ベストアンサー獲得回数52010/11/05 17:58:36

ポイント100pt

[横取り丸] などでHTTPレスポンスヘッダの違いを観察してみるとか。

http://bbs.wankuma.com/index.cgi?mode=al2&namber=54212

id:tomo692

横取り丸入れてみました。

http://localhost/test.htmlでは動作OKですが、トレースできてませんでした。

(ネットワークアダプタを経由してないからだと思います)

×http://自IPアドレス/test.htmlではだめでした

その時の横取り結果です

■リクエスト

GET http://192.168.1.253/WindowsFormsControlLibrary1.dll HTTP/1.1

Accept: */*

Referer: http://192.168.1.253/test.html

Accept-Language: ja-JP

User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; InfoPath.1; .NET4.0C)

Accept-Encoding: gzip, deflate

Host: 192.168.1.253

Proxy-Connection: Keep-Alive

■レスポンス

HTTP/1.1 200 OK

Date: Fri, 05 Nov 2010 14:11:29 GMT

Server: Apache/2.2.11 (Win32) DAV/2 mod_ssl/2.2.11 OpenSSL/0.9.8i PHP/5.2.9

Last-Modified: Thu, 04 Nov 2010 15:02:22 GMT

ETag: "130000000329b7-1600-4943b71edb98b"

Accept-Ranges: bytes

Content-Length: 5632

Keep-Alive: timeout=5, max=99

Proxy-Connection: Keep-Alive

Connection: Keep-Alive

Content-Type: application/x-msdownload


MZ・ク@€コエ ヘ!クLヘ!This program cannot be run in DOS mode.

以下文字化けのデータが続いてました

ネットワークアダプタを経由するとだめなんですね。

ちょっと足がかりが出来ました。

ありがとうございます


追記

★★★解決しました★★★

.htaccessで

AddType application/octet-stream dllを設定したら直りました!

貴重なヒントをいただき、ありがとうございました!!

2010/11/06 01:28:07

その他の回答(1件)

id:asuka645 No.1

あすか回答回数856ベストアンサー獲得回数972010/11/05 07:39:51

ポイント10pt

ご質問からはどのようなコントロールなのか確認できませんが、ActiveXコントロールの拡張子は .OCX です。

プロジェクトの作成自体が間違っているのではないでしょうか。

ご確認ください。

id:tomo692

ボタンを押したらhello worldをラベルに表示するだけのプログラムです。

localhostのapache上で正常動作は確認してますので拡張子はdllで問題ないと思います。

以下の記事を参考に作成しました。

http://japan.internet.com/developer/20051220/25.html

http://d.hatena.ne.jp/language_and_engineering/20100705/p1

2010/11/05 11:56:19
id:todo36 No.2

todo36回答回数34ベストアンサー獲得回数52010/11/05 17:58:36ここでベストアンサー

ポイント100pt

[横取り丸] などでHTTPレスポンスヘッダの違いを観察してみるとか。

http://bbs.wankuma.com/index.cgi?mode=al2&namber=54212

id:tomo692

横取り丸入れてみました。

http://localhost/test.htmlでは動作OKですが、トレースできてませんでした。

(ネットワークアダプタを経由してないからだと思います)

×http://自IPアドレス/test.htmlではだめでした

その時の横取り結果です

■リクエスト

GET http://192.168.1.253/WindowsFormsControlLibrary1.dll HTTP/1.1

Accept: */*

Referer: http://192.168.1.253/test.html

Accept-Language: ja-JP

User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; InfoPath.1; .NET4.0C)

Accept-Encoding: gzip, deflate

Host: 192.168.1.253

Proxy-Connection: Keep-Alive

■レスポンス

HTTP/1.1 200 OK

Date: Fri, 05 Nov 2010 14:11:29 GMT

Server: Apache/2.2.11 (Win32) DAV/2 mod_ssl/2.2.11 OpenSSL/0.9.8i PHP/5.2.9

Last-Modified: Thu, 04 Nov 2010 15:02:22 GMT

ETag: "130000000329b7-1600-4943b71edb98b"

Accept-Ranges: bytes

Content-Length: 5632

Keep-Alive: timeout=5, max=99

Proxy-Connection: Keep-Alive

Connection: Keep-Alive

Content-Type: application/x-msdownload


MZ・ク@€コエ ヘ!クLヘ!This program cannot be run in DOS mode.

以下文字化けのデータが続いてました

ネットワークアダプタを経由するとだめなんですね。

ちょっと足がかりが出来ました。

ありがとうございます


追記

★★★解決しました★★★

.htaccessで

AddType application/octet-stream dllを設定したら直りました!

貴重なヒントをいただき、ありがとうございました!!

2010/11/06 01:28:07

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません