0

私はこれを一日の大半にわたって調査してきましたが、答えを見つけることができません。私はstackoverflowに比較的慣れていません。いくつかの質問をするための特定のエチケットはありますか(私は過去数日間に3つ質問しました)?

いずれかの方法、

コードビハインドファイルのコードは次のとおりです。スクリプトsysteminfo.vbsを実行し、正常に機能しています。しかし、スクリプトでは、いくつかの変数が割り当てられています。

Dim WshShell = CreateObject("WScript.Shell")
        WshShell.Run("wscript.exe c:\systeminfo.vbs")

vbscript

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colSettings = objWMIService.ExecQuery _
("Select * from Win32_OperatingSystem")
For Each objOperatingSystem in colSettings 
dim osName 
osName = objOperatingSystem.Name
Wscript.Echo "OS Name: " & objOperatingSystem.Name
dim osVer
osVer = objOperatingSystem.Version
Wscript.Echo "Version: " & objOperatingSystem.Version
Wscript.Echo "Service Pack: " & _
    objOperatingSystem.ServicePackMajorVersion _
        & "." & objOperatingSystem.ServicePackMinorVersion
Wscript.Echo "OS Name: " & objOperatingSystem.SizeStoredInPagingFiles
Next

osNameとosVerを使用して、ASP側のラベルに値を入れたいと思います。osNameとosVerは単純な例であることは理解していますが、VBScriptからASPに変数を配置するという概念を理解する必要があります。私のクライアントには、日常的に使用する複数のVBScriptがあり、それらのスクリプトを自動化して、失敗したかどうかを示すレポートを作成する必要があります。

お手伝いありがとう。

4

1 に答える 1

1

デビッド、

Stack Overflowを初めて使用する人として、StackExchangeサイトに関するこの非常に包括的なFAQを見つけてうれしく思いました。3番目の質問「質問できる数に制限はありますか?」を参照してください。あなたの最初の質問への答えのために。

あなたの質問の核心に関して、私は@Ramhoundに同意します。ログファイルを使用して、WSH/VBScriptスクリプトとASP.NETページの間で情報を交換することが実行可能なアプローチです。

必要なのはですScripting.FileSystemObject。これは、ダウンロード可能なWindowsヘルプファイルとしての包括的なWSHリファレンスです。

ヒント:ダウンロードページの下部にあるように、ヘルプページのブロックを解除するには、1)を右クリックしscript56.chm、2)[プロパティ]を選択し、3)[ブロックを解除]をクリックします。

FileSystemObject「スクリプトランタイム」という見出しの下にイントロがあります。

もう1つの提案:マルチユーザー環境でASP.NETを介してこのスクリプトを実行するため、ユーザーごとまたはページアクセスごとにログファイルを作成する必要がある場合があります。その場合は、他のログファイルとの名前の衝突を避けるために、ログファイルごとに一時ファイル名を生成する必要があります。一時ファイルを生成するGetTempNameには、WSHリファレンスを参照してください。

于 2012-07-07T00:55:07.710 に答える