- PR -

asp.netでブラウザを開く

1
投稿者投稿内容
AMD
会議室デビュー日: 2005/07/13
投稿数: 2
投稿日時: 2007-07-18 10:28
はじめまして。VisualWebDeveloper2005ExpressEdition(VB)の開発初心者です。

作成中のシステムで、リストボックスで選択したサイトのURLを新しく開いたブラウザで参照しようとしています。

開発マシンはVista、VisualWebDeveloper2005ExpressEdition、IE7.0、dotnetframework2.0の環境で下記のaからcようなコードでうまく開きます。

しかしながら、実行環境のWindows2003Server、IE6.0、Dotnetframework2.0ではcのリダイレクトならうまくいくのですが、a,bの新しくブラウザを開くコードが動かず、bはactivexコントロールが使えない、cは対象ファイルが開けないといったエラーメッセージがでます。

IISの設定で、スクリプトソースアクセス、読み取りを可にするチェックを入れ、実行アクセス許可でスクリプトおよび実行可能ファイルを許可しています。dotnetは2.0に設定しています。アドバイスいただければ幸いです。

a. System.Diagnostics.Process.Start(ListBox3.Items(x).Text)

b. Dim objie As Object = CreateObject("InternetExplorer.application")
Dim x As Integer = ListBox3.SelectedIndex
objie.visible = True
objie.navigate(ListBox3.Items(x).Text)

c. Response.Redirect(ListBox3.Items(x).Text)
tkrn
ベテラン
会議室デビュー日: 2005/10/25
投稿数: 61
投稿日時: 2007-07-18 11:01
引用:

AMDさんの書き込み (2007-07-18 10:28) より:
はじめまして。VisualWebDeveloper2005ExpressEdition(VB)の開発初心者です。

作成中のシステムで、リストボックスで選択したサイトのURLを新しく開いたブラウザで参照しようとしています。

開発マシンはVista、VisualWebDeveloper2005ExpressEdition、IE7.0、dotnetframework2.0の環境で下記のaからcようなコードでうまく開きます。

しかしながら、実行環境のWindows2003Server、IE6.0、Dotnetframework2.0ではcのリダイレクトならうまくいくのですが、a,bの新しくブラウザを開くコードが動かず、bはactivexコントロールが使えない、cは対象ファイルが開けないといったエラーメッセージがでます。

IISの設定で、スクリプトソースアクセス、読み取りを可にするチェックを入れ、実行アクセス許可でスクリプトおよび実行可能ファイルを許可しています。dotnetは2.0に設定しています。アドバイスいただければ幸いです。

a. System.Diagnostics.Process.Start(ListBox3.Items(x).Text)

b. Dim objie As Object = CreateObject("InternetExplorer.application")
Dim x As Integer = ListBox3.SelectedIndex
objie.visible = True
objie.navigate(ListBox3.Items(x).Text)

c. Response.Redirect(ListBox3.Items(x).Text)



たぶん、開発マシンではIISを使わずプロジェクトを実行していていませんか?
実行環境側ではIISを使って実行しているから動かないのだと思われます。
しかし、a.とb.の方法は根本的に間違っています。
これでは、サーバー上でIEを開くコードになってしまいます。

クライアント上で開くためには、JavaScriptを利用します。

Me.Page.ClientScript.RegisterStartupScript(Me.GetType(), "open", "window.open('" & ListBox3.Items(x).Text & "')", True)
かるあ
ぬし
会議室デビュー日: 2003/11/16
投稿数: 1190
お住まい・勤務地: センガワ→ムサシノ
投稿日時: 2007-07-18 11:02
たぶんこの会議室で検索すれば出てくると思うけれど、
何処の誰が何を起動しているのかを意識してください。

この場合、ユーザがボタンを押したら、Webサーバ上のIEを起動しようとしています。
ユーザがボタンを押したら、新しいブラウザで違うページを開きたいなら Javascript を使って window を Open する必要があると思います。
_________________
かるあ のメモスニペット
AMD
会議室デビュー日: 2005/07/13
投稿数: 2
投稿日時: 2007-07-18 11:25
ありがとうございました。どうもサーバとクライアントの関係がぴんとこず、javaスクリプトでOKでした。たいへんありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)