0

VBScript を使用して WMI クラスWin32_OperatingSystemを使用せずに、Windows バージョン (オペレーティング システムなど) を取得したいと考えています。方法はありますか?

これを実行したい理由は、WMI をサポートしていない NT マシンで VB スクリプトを実行していて、NT 4.0 用の WMI をインストールできるものを見つけることができないためです。また、私が WMI に依存しておらず、VBScript を使用して WMI なしで Windows バージョンを取得することを好むのであれば、それは良いことです。

助けてください !!

ありがとう、

なやん

4

2 に答える 2

0

NT4から移行することが不可能であり、RPCが有効になっていると仮定すると、レジストリから取得できます。

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\\BuildLab

%systemroot%\windows\system32\prodspec.ini セクションに情報[Product Specification]があり、その後に「Product=」が続き、等号の後にOSバージョンの名前が続きます。この情報を抽出するためにVBScriptコードが必要な場合は、コメントを追加してください。追加します。

RPCが利用可能な場合、PSEXECもオプションになります。

また、Active Directoryがある場合は、情報もそこにありますが、再イメージングプロセスに「問題」がある場合は、信頼できない可能性があります。ADからVBSコードを取得する必要がある場合は、このリクエストにコメントを投稿してください。追加します。

ただし、言うまでもなく、NT4から移行する必要があります。何年もパッチはありません。それが不可能な場合は、システムを仮想化し、ISAやOutpost Agnitumなどの適切に構成されたファイアウォールの背後に配置して、重要な機能に明示的に必要な場合を除き、すべてのプロトコルとすべてのホストへのポートをブロックすることを検討してください。

于 2012-11-02T08:25:51.320 に答える
0

ver次のコマンドでバージョンを取得できます。

Set sh = CreateObject("WScript.Shell")
Set ver = sh.Exec("%COMSPEC% /c ver")
Do While ver.Status = 0
  WScript.Sleep 100
Loop
version = ver.StdOut.ReadAll
于 2012-11-02T09:50:24.283 に答える