- PR -

webのrequestが取れていない?

投稿者投稿内容
unibon
ぬし
会議室デビュー日: 2002/08/22
投稿数: 1532
お住まい・勤務地: 美人谷        良回答(20pt)
投稿日時: 2008-11-14 10:06
引用:

unteiさんの書き込み (2008-11-13 23:54) より:
IE コンポーネントに送り込むことが出来ないことが
わかりました。


「IE コンポーネント」を使ってもできるんじゃないのかな?と思って、VB6 相当の環境で、Microsoft Web Browser コントロール(WebBrowser)を使って試してみましたが、できないみたいですね。
たとえば、つぎのようなコードを動かすと、
コード:
Call WebBrowser1.Navigate("http://localhost/test.html")
...
WebBrowser1.Document.forms(0).Item(0).Value = "c:\hoge.txt"


実行時にはなにもエラーが出ないのですが、Value プロパティーへの書き込みが無視されました。読むことはできるのですが。
これって、ブラウザー上で、Web サーバーからダウンロードした JavaScript の実行での書き込みを、セキュリティーの制限で禁止しているのなら分かるのですが、プログラムからのアクセスも禁止している理由が分かりません。使いにくいですね。
todo
ぬし
会議室デビュー日: 2003/07/23
投稿数: 682
投稿日時: 2008-11-14 11:39
引用:

unibonさんの書き込み (2008-11-14 10:06) より:
これって、ブラウザー上で、Web サーバーからダウンロードした JavaScript の実行での書き込みを、セキュリティーの制限で禁止しているのなら分かるのですが、プログラムからのアクセスも禁止している理由が分かりません。使いにくいですね。


ブラウザの内側と外側の違いだけで、扱っているのは同じ物です。
documentオブジェクトの仕様でできないのでしょう。


下のサンプルでは、multipartなデータを自力で作成して、webbrowser.NavigateでPOST送信しています。

Setting a file to upload inside the WebBrowser component
http://www.codeproject.com/KB/aspnet/set-webbrowser-file-input.aspx
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2008-11-14 12:01
引用:

unibonさんの書き込み (2008-11-14 10:06) より:
実行時にはなにもエラーが出ないのですが、Value プロパティーへの書き込みが無視されました。読むことはできるのですが。
これって、ブラウザー上で、Web サーバーからダウンロードした JavaScript の実行での書き込みを、セキュリティーの制限で禁止しているのなら分かるのですが、プログラムからのアクセスも禁止している理由が分かりません。使いにくいですね。


 ローカル ディスクにある HTML ファイルが読み込むスクリプトも、実行に制限を受けます(設定による)。
 CD 等の、リムーバブル メディアは、また別に設定できます。

 なお、読み込むときは、ファイル名は取れますが、パスは取れないはずです。

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