- - PR -
OCXを埋め込んだWebFormを複数起動できないのは仕様?
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2005-10-17 19:46
ASP.NETのWebForm上にOCXのActiveXコントロールを埋め込んでいます。
ブラウザ(IE)からこのフォームをいくつか開くつもりなのですが 既に1つのブラウザにこのコントロールが表示されていると、他のブラウザでは ページのエラーとなります。 ⇒オブジェクトでサポートされていないプロパティまたはメソッドです” なおWebFormに埋めこまずHTML等にOCXを埋め込んだものは複数起動できます。 WebFormにOCXを埋め込んだ場合に同じ画面を複数開けないのは仕様でしょうか? ご存知でしたら教えてください。 よろしくお願いいたします。 | ||||
|
投稿日時: 2005-10-17 23:38
一般的にはそんな制限はありません。 Flash を貼ったページを何枚でも開けるのがよい実例です。 「その OCX の仕様」なんでしょう。 _________________ // 渋木宏明 (Hiroaki SHIBUKI) // http://hidori.jp/ // Microsoft MVP for Visual C# // // @IT会議室 RSS 配信中: http://hidori.jp/rss/atmarkIT/ | ||||
|
投稿日時: 2005-10-18 08:49
「その OCX の仕様」にしてもこれは妙です。 OCX 周辺のコードを載せて頂けると嬉しいです。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||
|
投稿日時: 2005-10-18 10:46
ありがとうございます。
OCXを埋め込んでいる部分は下記のように記述されています。 ----------------------------------------------------------------- <%@ Page language="c#" Codebehind="PlayerView.aspx.cs" EnableViewState="false" AutoEventWireup="false" Inherits="FJP.Relaytion.PlayerView" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" > <HTML> <HEAD> <title>音声再生画面</title> <meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR"> <meta content="C#" name="CODE_LANGUAGE"> <meta content="JavaScript" name="vs_defaultClientScript"> <meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema"> <SCRIPT language="JavaScript"> var ret = 0; //ind,dat取得判断用(ocxメソッド) var ret2 =0; //xml取得判断用(ocxメソッド) var name=""; var closeFlg = false; //このメソットは、音声ファイルをダウンロードするメソットです。 // function downloadFile(){ ret = Player.Httpdown("http//〜(URL)?id=<%=VoiceID %>",FileNameXX) if(ret!=0){ alert("音声ファイルの読み込みに失敗しました\\n管理者までご連絡ください"); } } </SCRIPT > ■----[bodyタグ内]------------------------------------- <body bgColor="#ffcccc" MS_POSITIONING="GridLayout" onload="setTimeout( 'downloadFile()', 3000 )"> <TABLE id="Table1" style="Z-INDEX: 101; LEFT: 56px; WIDTH: 632px; POSITION: absolute; TOP: 32px; HEIGHT: 272px" cellSpacing="1" cellPadding="1" width="300" border="1"> <TR> <TD style="HEIGHT: 250px"> <OBJECT id="Player" style="WIDTH: 640px; HEIGHT: 272px" classid="clsid:1C541400-EE9A-4C7B-8005-47B5046765C4" VIEWASTEXT> <PARAM NAME="_Version" VALUE="131076"> <PARAM NAME="_ExtentX" VALUE="16933"> <PARAM NAME="_ExtentY" VALUE="7197"> <PARAM NAME="_StockProps" VALUE="0"> <PARAM NAME="BackColor" VALUE="12632319"> <PARAM NAME="WaveBackColor" VALUE="16777215"> <PARAM NAME="WaveLineColor" VALUE="16744448"> <PARAM NAME="BtnVisible" VALUE="1"> <PARAM NAME="BuffSize" VALUE="4"> <PARAM NAME="BuffNum" VALUE="4"> <PARAM NAME="LineHeight" VALUE="468"> <PARAM NAME="WaveVisible" VALUE="-1"> <PARAM NAME="ChangeIcon" VALUE="0"> </OBJECT> </TD> </TR> --------------------------------------------------------------------- <body>タグでonLoadを使用してOCXのメソッドを呼び音声ファイルを再生するようにしています。 メソッドは<HEAD>タグ内に記述してます。 VoiceIDは、分離コード側でpublic static String VoiceID = "";こちらに前頁から渡されたQueryString値をセットしたものを利用して該当するURLを作成してファイルをダウンロードしております。 [開発環境]WinXPSP2 +VS2003 (デザイナ画面の"ツールBOX”のコンポーネントにこのOCXを登録しています。)+IIS(Win2003Server) よろしくお願いいたします。 |
1