- - PR -
Webアプリケーションでクライアントのレジストリ取得
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-10-23 20:39
初めまして、山田です。
.Net VBにてWebアプリケーションを作成しています。 やりたいことは、クライアント側のレジストリ取得です。 hoge.asax.vb にて、レジストリの取得プログラムを書き(getReg) bar.aspx にてそのメソッドを呼び出しています。 クライアントは、bar.aspxを実行するとgetRegが呼び出され レジストリが取得出来るのですが、サーバー側のレジストリを 参照してしまいます。 クライアントのレジストリを読み込むにはどの様なプログラムを 作成すればよろしいのでしょうか。 レジストリの種類は、REG_BINARYとなっています。 getRegは下記です。 Function getReg(ByVal keyPath As String, ByVal keyName As String) Dim instance As RegistryKey Dim bytes As Byte() instance = Microsoft.Win32.Registry.LocalMachine instance = instance.OpenSubKey(keyPath) bytes = CType(instance.GetValue(keyName), Byte()) instance.Close() path = Encoding.Unicode.GetString(bytes) Return path End Function クライアント側のレジストリを取得するには、RegistryKey以外の関数を使用するのでしょうか? それとも、呼び出し側で何か特別なことを行うのでしょうか? サーバー Windows2003 クライアント WindowsXP HomeEdition [ メッセージ編集済み 編集者: 山田 編集日時 2006-10-23 20:40 ] | ||||
|
投稿日時: 2006-10-23 22:07
何をしたいのかわかりませんが、「できなくてで当たり前」というのはわかりますよね。
おそらく、クライアントに ActiveX をインストールさせる等特別な作業が必要です。 で、クライアントのレジストリを取得するとなると、相当クライアントに依存するアプリケーションになっちゃうわけですが、Web アプリケーションの利点がかなりなくなりませんか? _________________ 囚人のジレンマな日々 | ||||
|
投稿日時: 2006-10-23 22:49
いや、多分、できなくて当たり前がわかっていない可能性大だと思う。 | ||||
|
投稿日時: 2006-10-23 23:03
何か悪意のあるサイトでも作るご予定でしょうか?
ActiveXをクライアントにインストールしてもらうか、 ブラウザのセキュリティーホールをついて、スパイウェアでも送り込みましょう | ||||
|
投稿日時: 2006-10-23 23:05
#2ちゃん風に言うと「その質問はもう飽きた。
#もっと面白い事を聞いてくれ」って感じ その処理をASP.NETで記述し、サーバー側で動かしても取得できるのはサーバー側のレジストリ設定。ASP.NETはあくまでサーバー側で動作し、HTMLデータを生成してクライアントに送っているだけだと言うことを理解して欲しい。 そして、もしも特別なソフトウェアをクライアントにインストール(あるいはクライアントの設定を変更)する事なく、クライアントPCのデータを取り出せたなら、世間ではそれをセキュリティホールと呼ぶ事も理解して欲しい。 クライアント側のレジストリ設定を読み出すためには、その処理を.NET Frameworkアプリケーションとしてクライアント上で動かす必要がある。 _________________ 甕星 <mikahosi@abox9.so-net.ne.jp> http://blogs.msmvp.jp/mikahosi/ | ||||
|
投稿日時: 2006-10-24 09:29
クライアント側に何らかの情報を保持させる場合は、クッキーを使うのが一般的ですよね。 そういう目的かな?、と勝手に想像してみました。 #いろいろな方が書いているので、レジストリの件は省略しました。 _________________ R・田中一郎 - R.Tanaka.Ichiro’s Blog | ||||
|
投稿日時: 2006-10-24 10:29
返信ありがとうございます。
>いや、多分、できなくて当たり前がわかっていない可能性大だと思う。 確かに判っていませんでした。 キーの読み込み程度なら出来るのかなと思っていました。 >何か悪意のあるサイトでも作るご予定でしょうか? MicrosoftのとあるSDKを利用してサービスを立ち上げようとしているのですが その技術指南書にレジストリを読み込んでHogeしろと書いてあったので。。。。。。 >ASP.NETはあくまでサーバー側で動作し、HTMLデータを生成してクライアントに送っているだけだと言うことを理解して欲しい。 これはそうだろうなぁと思っていましたが、もしかしたら・・・と思いやってみました。 結果駄目でしたので、どうするのだろうと思い質問してみました。 >クライアント側のレジストリ設定を読み出すためには、その処理を.NET Frameworkアプリケーションとしてクライアント上で動かす必要がある。 なるほど。 こちらの線で調べてみたいと思います。 >クライアント側に何らかの情報を保持させる場合は、クッキーを使うのが一般的ですよね。 そういう目的かな?、と勝手に想像してみました。 クライアント側のレジストリに、ファイルパスが書いてあり そのファイルを読み込んでバージョンを確認して バージョンによって処理を変えたいのです。 ってこれを最初に書けば良かったですね。 | ||||
|
投稿日時: 2006-10-24 10:43
>クライアント側のレジストリに、ファイルパスが書いてあり
>そのファイルを読み込んでバージョンを確認して >バージョンによって処理を変えたいのです。 イメージとしては他人の家に勝手に上がりこんで何かを探そうとしているようなもの。 _________________ 己への戒め 「活動的な馬鹿より恐ろしいものはない」 by ゲーテ |