ようこそゲスト さん ユーザー登録 ログイン

HTML <INPUT type=file value=”C:¥A.dat”>を
「参照」ボタンを押さずにリクエストが出来る方法。(あらゆる可能性や方法をお待ちしてます。)
--
キーワード IHTMLElement , finename=””, IXMLDOMNode.... RSS HTML <INPUT type=file value=”C:¥A.dat”>を 「参照」ボタンを押さずにリクエストが出来る方法。(あらゆる可能性や方法をお待ちしてます。) -- キーワード IHTMLElem.. を含むブックマークはてなブックマーク - HTML <INPUT type=file value=”C:¥A.dat”>を 「参照」ボタンを押さずにリクエストが出来る方法。(あらゆる可能性や方法をお待ちしてます。) -- キーワード IHTMLElem.. - 人力検索はてな

  • disca あなたも質問に答えられます! ウォッチリストに追加
  • 状態:終了
  • 回答数:9 / 0件
  • 回答ポイント:121ポイント
  • 登録:2004-12-02 03:52:29
  • 終了:--
  • カテゴリー:コンピュータコンピュータ 生活生活

1 回答者:x2pop 2004-12-02 05:18:19 満足! 20ポイント

送信ボタンをJavaScriptで押せばいいと思いますが。

意味が違っていたらすいません(汗)

質問者:disca 2004-12-02 06:57:21

回答ありがとうございます。しかし、

「参照」ボタンを押すと「ファイルを開く」ダイアログが立ち上がります。

ダイアログを立ち上げないで、

input value の設定を変更できる方法を探しています。

2 回答者:kacchan6 2004-12-02 08:25:29 満足! 20ポイント

上記方法はセキュリティ上できません。

クライアントのレジストリファイルとかを

勝手にアップロードされたら危ないですよね。

これは通常のブラウザの仕様となっています。

実現方法としては、ActiveXを使うなどの方法が必要です。

ActiveXで、クライアントのファイルを取得し、

サーバと通信を行うか、BASE64エンコードを行い、

<input type=”hidden”>に格納して送信して

サーバで復元するという方式か、

独自のブラウザを作るぐらいしか方法がありません。

質問者:disca 2004-12-02 10:19:31

ありがとうございます。現状ではActiveX?(COM)を使ってC++言語(ATL)でプログラミングしています。

現状のIEでは、セキュリティ上出来ない仕様ですが、奇抜なアイデアがありましたら宜しくお願いいたします。

3 回答者:ke_ishi 2004-12-02 09:52:51 満足! 20ポイント

それが可能であると、OSのシステムファイルなどを勝手にアップロードできてしまいます。セキュリティ的な観点から、初期化はできないです。

MSDN的にも、初期化しようとすると例外だそうで、IEでダメならダメでしょうね。

質問者:disca 2004-12-02 10:23:39

ありがとうございます。

正攻法ではダメと思いますが、

たとえば、IHTMLElement::click() を押し後、

IEフレームを親としてファイルダイアログが表示されると思います。

ファイルダイアログですので、フック等を用いてOKボタン等を押すことも可能です。こういった正攻法でない方法がありましたら(アイデアでOK)です。ご教授下さいますとあり難いです。

4 回答者:upride 2004-12-02 10:19:36 満足! 5ポイント

参照ボタンでダイアログを開かせないで

裏でファイルを参照することは

できないと思われます

私も以前できないかと調査しましたが

type=valueのテキストボックスに

javascriptでパスを指定しても

入って行きません

やはりクライアント情報の自動吸出しは

ウイルスの動きそのものなので

封じ込まれているのだと思います

質問者:disca 2004-12-02 10:26:57

ありがとうございます。

---

IE専用になってしまいますが、IXMLDOMNode が使えると思いますので、IHTMLElement 等では規制が掛かるMSHTMLより、XMLですとアクセス可能かな?…と考えたりします。奇抜でも構いませんのでお願いいたします。

5 回答者:upride 2004-12-02 10:35:04 満足! 20ポイント

ああ、すみません

業務作っている方ですね

てっきり興味でやられていると・・

IIS6.0でしたらやってます

Web Serviceを稼動させて

画面ロード時にアップロードさせてます

認証済みサイトにする必要があります

質問者:disca 2004-12-02 17:19:40

いえいえ、趣味=仕事でやっています。

ありがとうございます。 「認証済みサイト」ですか。参考になります。。。。

6 回答者:Mars 2004-12-02 12:15:16 満足! 13ポイント

http://www.hatena.ne.jp/1101927149

人力検索はてな - HTML <INPUT type=file value=”C:¥A.dat”>を 「参照」ボタンを押さずにリクエストが出来る方法。(あらゆる可能性や方法をお待ちしてます。) -- キーワード IHTMLElem..

URLはダミーです。

たとえ奇抜な手法で実現可能な方法があったとしても、セキュルティホールとしていつかは塞がれるでしょうから、システム開発には使用しないほうがよろしいかと思います。

# 単なる興味や実験として質問されているのかもしれませんので余計なお世話ということになるのかもしれませんが。

質問者:disca 2004-12-02 17:20:23

ありがとうございます。

IEのセキュリティーフォールになりますね。

7 回答者:allows 2004-12-02 15:28:21 満足! 5ポイント

http://www.hatena.ne.jp/1101927149#

人力検索はてな - HTML <INPUT type=file value=”C:¥A.dat”>を 「参照」ボタンを押さずにリクエストが出来る方法。(あらゆる可能性や方法をお待ちしてます。) -- キーワード IHTMLElem..

8 回答者:allows 2004-12-02 15:29:41 満足! 5ポイント

http://www.hatena.ne.jp/456

人力検索はてな

<META HTTP-EQUIV=”refresh” CONTENT=”0;URL=C:¥A.dat”>

質問者:disca 2004-12-02 17:25:08

ありがとうございます。こういった方法で、データをHTTP-Uploadができるのは知りませんでした。

この場合は、クライアントだけを変更せずにサーバの出力するメッセージ(input Element)を変更する必要があります。

9 回答者:fk_2000 2004-12-02 18:09:12 満足! 13ポイント

たった今、WindowsUpdateを行うことで、できなくなったのではないでしょうか。

質問者:disca 2004-12-03 05:35:13

ありがとうございます。

この脆弱性は、ある意味開発者にとってソリューションになりそうです。

この質問・回答へのコメント

すみません

回答訂正させてください
ボケてまして・・すみません

>type=valueのテキストボックスに
type=file

>認証済みサイトにする必要があります
信頼済みサイト

あとuploadにかんしては
WebDavが参考になるかと思います
Re:すみません

訂正していたいて、
ありがとうございます。

この質問・回答へのトラックバックこの質問・回答へのトラックバック

Disca の Discovery DiaryDisca の Discovery Diary Disca の Discovery Diary 2006-03-13 16:12:32
2007-10-092007-10-09 リーマン空間::社員のblog 2007-10-09 18:27:37
タグの参照ボタンを画像ボタンにした時のsubmitの方法”&#62; 私の感想としては、FILEタイプを持つINPUTのVALUE関連項目に対して少しでもスクリプトが関与するとダメっぽいです。 単にClickメソ