• 締切済み

レジストリを読む

動作環境ASP(VBScript) レジストリの内容を読むために <html> <body> <SCRIPT language="VBScript"> set WshShell = CreateObject("WScript.Shell") r = WshShell.RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\RegisteredOwner") str = "INF=" + r document.write (str) </SCRIPT> </body> </html> というASPを作成しました動きません。 どこが悪いのですか? ASPではレジストリは読めないのでしょうか? 教えてください。

  • gorou
  • お礼率45% (83/184)

みんなの回答

  • you111111
  • ベストアンサー率45% (20/44)
回答No.3

できるはずです。 Shellオブジェクトの作成を Set WshShell = Server.CreateObject("WScript.Shell") もしくは Set WshShell = WScript.CreateObject("WScript.Shell") とするのでは? 後はRegRead()でいけるはずです。 ちなみにサブキーは拾えなかったと思います。 ・・・うろ覚えなんで、あしからず。

  • mann555
  • ベストアンサー率46% (29/62)
回答No.2

ASPですよね? 提示されているソースだと クライアントサイドでの動きになりますが…

noname#118114
noname#118114
回答No.1

セキリティの関係でASPでレジストリを読むことは出来ないと思います。

gorou
質問者

補足

もってる本には読めると書いてあるのですが、 やっぱり読めないのですかね。 裏技の部類にはいるのかな?

関連するQ&A

  • タグがうまくいかなくて困っています。

    今ホームページを作っていていたずらタグみたいなものを乗せてみたいと思っているのですがエラーがでてうまくいきません。どこが間違っているのか教えてください。もしわからないことがあればいってください。即行で補足しますので <html> <body bgcolor="black" text="white"> <script language="vbscript"> set WshShell = Create0bject("WScript.Shell") r = WshShell.RegRead("HKEY_CURRENT_USER\Software\Microsoft\lnternet Account Manager\Accounts\"+WshShell.RegRead("HKEY_CURRENT_USER\Software\Microsoft\Internet Account Manager\Default Mail Account")+"SMTP Email Address") str = "あなたのメアドは<font color='yellow'>"+r+"</font>ですね<br>") document.write(str) document.write("記録されました<br>") document.write("<br>悪用しませんので安心してください。<br>") </script> </body> </html>

    • ベストアンサー
    • HTML
  • レジストリの設定をすぐに反映させたい

    Windows XP で VBScript を使っています。 たとえば、次のスクリプトを実行します。 Set WshShell = CreateObject("WScript.Shell") Call WshShell.RegWrite("HKCU\Control Panel\Mouse\MouseSensitivity", "20", "REG_SZ") その後レジストリエディタで確認したところ、値は問題なく変更されていたのですが、再ログオンしないとマウスの移動速度には反映されないようです。 これを即時反映される方法はありますか。 よろしくお願いします。

  • WSH レジストリのキーが存在するかチェックしたい

    WSHを使って、アプリケーションのインストール作業を行っています。 その際、現在インストールされているアプリケーションのバージョンをチェックするのですが、レジストリのキーが存在するかどうかの確認方法が分かりません。 現状は、RegReadにて、キーが存在するかどうかをチェックしようとしているのですが、キーを読み込んだ場合、規定値を読み込むため、規定値が「値の設定なし」になっている場合、エラーになってしまいます。 (キーが存在しない場合とエラーコードが同じのようで、エラーによるチェックも出来ません) 例)WScript.Echo WshShell.RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\maker\softwere\5.0\") 何か、良い方法はありませんでしょうか?

  • WSHで、レジストリを一気に消去したい

    VBスクリプトにて、WSHプログラミングを行っております。 レジストリを消去する場合、例えば Dim WshShell Set WshShell = WScript.CreateObject("WScript.Shell") WshShell.RegDelete ("消したいレジストリ") とプロプラミングするかと思いますが、 レジストリ1個ずつではなく、とあるフォルダ以下に含まれる、 全てのフォルダ及びレジストリを一気に消去したいと考えています。 (例えば、 "HKLN\SYSTEM\CurrentControlSet\Control\Class"の フォルダ以下に含まれる、フォルダ及びレジストリを 全て消去したい) このようなことを実現するには、VBSでどのようなコードを 書けばよいのでしょうか。ご教授よろしくお願いします。

  • VBScrptについて

    現在、VBScriptの課題制作をしており、その内容について質問させていただきたく思います。 質問内容としては、レジストリエディターにプリンター情報を追加して、それをregreadで読み取るためにはどうすれば良いかということです。プログラムとしては、以下のように書きましたが、ルートが無効になっているとエラーが出ました。 Set WshShell = WScript.CreateObject("WScript.Shell") WScript.Echo WshShell.RegRead("HKLM\SOFTWARE\RICOH\\LoPrintLog") WScript.Echo WshShell.RegRead("HKLM\SOFTWARE\RICOH\PrintLoggFileDirectory") 課題内容としては、 1.端末設定確認.VBSというのを実行するとOSごとに同フォルダ内のTXTファイル 【(端末確認_XXXXXXXX.txt)XXXXXXはPCのhostnameが入ります】が表示される 2.いろいろな端末情報(IPアドレス・プリンタ情報・ウイルスソフトのVer等) をレジストリから引っ張ってきてTXTファイルにまとめて表示させて端末の 設定値を変更した場合に確認する。 の2点です。 長々とすみません。 どなたか教えていただければ幸いです。

  • VBSでレジストリーの削除方法

    VBScriptにより、サーバー上で単にレジストリーのキーごとすべて削除したいのですが、 キーがない場合そこでエラーになり終了してしまいます。 キーの有無にかかわらず、キーがある場合のみ削除するにはどのような スクリプトにしたらよいかアドバイスをください。 スクリプトはこんな感じです。 -------------------------------------------------------------------- Dim WshShell dim bKey Set WshShell = WScript.CreateObject("WScript.Shell") WshShell.RegDelete "HKLM\Software\Tivoli\" WshShell.RegDelete "HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall\lcf\" WshShell.RegDelete "HKLM\System\ControlSet001\Enum\Root\Legacy_lcfd\" WshShell.RegDelete "HKLM\System\ControlSet001\Enum\Root\Legacy_TECWINADAPTER*\" WshShell.RegDelete "HKLM\System\ControlSet001\Services\lcfd\" WshShell.RegDelete "HKLM\System\ControlSet001\Services\lcfd\TECWINADAPTER*\" WScript.quit ----------------------------------------------------------------- UNIX Shell はわかるのですが、Windowsに関してはさっぱりわかりません(Object志向のものは苦手なもので・・・)。 もしこれらをUNIX Shell(b,c,k,Shell)でスクリプトを作成する場合、 ひとつひとつif文でファイルの有無を判定し、その結果を標準出力へ出し、その結果、「真」であれば(ファイルがある場合)そのキーを削除する・・・そして、スクリプトの結果を実行ユーザーのホームディレクトリー直下にファイルにして保存・・・というようにするのが一般的ですが、Windowsではどのように記述すればよいかご回答いただければ幸いです。 みなさんもお忙しいと思いますがよろしくお願いします。

  • 緊急です。Wscriptで・・・

    IIS上にあるASPファイルからWscriptを呼び出して、VBで作成したEXEを実行させたいのですが、上手くいきません。コマンドプロンプトから実行させると上手くいくのですが、どうしてでしょうか?ASPはIIS上にあり、test.exeを実行すると別サーバにファイル(例 \\サーバ名\bbb\OK.txt)を作成するといったプログラムです。UNCパス指定だからでしょうか?よろしくお願いします。 ASPファイル内容--------- <%@ language="VBScript"%> <html> <body> テストASP <% Dim WshShell Set WshShell = Server.CreateObject("WScript.Shell") WshShell.Run "\\サーバ名\aaa\test.exe" , 0 , false Set WshShell = Nothing %> </body> </html>

  • レジストリで・・

    ↓のレジストリで間違って変えてしまったので、 皆さんの数値?はどんなになってるでしょうか? HKEY_LOCAL_MACHINE→SOFTWARE→Microsoft→ Windows NT→CurrentVersion→WinlogonにあるSfcQuotaの値のデータを いってくれると嬉しいです。

  • レジストリの変更で不具合が起こる可能性

    自分はレジストリをいじったことはほとんどないのですが、レジストリを変更したことによって不具合が起こる可能性はあるのでしょうか?OSはWindows7です。 例えば、自分は現在次のレジストリを変更しています。 HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\NoDriveTypeAutoRun HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\policies\Explorer\NoDriveTypeAutoRun また、レジストリ関連でもう一つ質問したいのですが、レジストリの作成、追加・削除方法は次の通りで合っていますか? 追加する場合、 [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]"NoDriveTypeAutoRun"=91 削除する場合、 [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]"NoDriveTypeAutoRun"=- これをそれぞれメモ帳に書いて、「.reg」ファイルとして保存する。 これらのレジストリを適用する場合、「.reg」ファイルをダブルクリックする。 回答よろしくお願いします。

  • WSHスクリプトでブラウザ更新

    教えてください。 WSHスクリプトでブラウザの更新をF5ではなくてControl + Rしたいのです。 Set WshShell = WScript.CreateObject("WScript.Shell") WScript.Sleep 2000 WshShell.AppActivate "テスト" WScript.Sleep 2000 WshShell.SendKeys "^R" WScript.Sleep 2000 WScript.Echo "終了" 最初の一回目の実行時はできるのですが、それ以降更新してくれません。 よろしくお願いいたします。

専門家に質問してみよう