3

私はPCの小さなLANにソフトウェアをインストールすることを担当する管理者です。ソフトウェアは別々の段階でインストールする必要がありました(3つの異なる実行可能セットアップパッケージ)。

セールスマペットがステージを間違った順序で提供し、それらが間違った順序でインストールされたため、レジストリキーが正しく生成されませんでした。

したがって、各PCの既存のユーザーごとにレジストリにHKCUエントリを作成する必要があります。

インストールする必要のあるレジストリキーは

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\AcmeSoft\AcmeApp]
"InstallLocation"="C:\\Program Files (x86)\\AcmeApp"
@=""

この新しいレジストリキーをHKCU\Software \ AcmeSoft \ AcmeAppハイブに展開するために、PCごとに1回実行できるスクリプト(言語は重要ではありませんが、C ++とPythonには精通しています)を作成したいと思います。

Regeditは、HKEY_USERSというハイブを表示します。これには、PC上のすべてのユーザーのエントリが含まれている可能性があります。

どういうわけかHKEY_USERSを繰り返して、前述のキーを確認し、不足している場合はインストールできますか?ありがとう。

4

2 に答える 2

1

提供された回答にいくつかの単純な構文エラーが見つかりました。これが必要な人のための正しい構文です。

for /F  "delims=\ tokens=2,*" %t in ('reg query HKU') do 
    reg add HKU\%t\Software\AcmeSoft\AcmeApp /ve

for /F  "delims=\ tokens=2,*" %t in ('reg query HKU') do 
    reg add HKU\%t\Software\AcmeSoft\AcmeApp /v InstallLocation /d C:\\Program Files (x86)\\AcmeApp

しかし、これは完全には正しくありません。HKUのエントリのリストは次のとおりです。

HKUハイブ

システムで有効なアカウントと思われるのは、S-1-5-21-856089149-4157031032-549160387-500のみです。

ただし、このマシンにサインインするユーザーはたくさんいます。

PC上のユーザーアカウント

だから私は代替手段が必要です。入手したら、ここに投稿します。

更新 すべてのユーザーを一覧表示するコマンドを見つけましたが、これはドメインコントローラーに情報を照会しているようです。これにより、システム上のすべてのアカウント(管理者、テンプレート、非アクティブ、たとえば無効なアカウントなど)が返されます。

wmic useraccount get name,sid

知っておくと便利ですが、私の目的にはやり過ぎです。

于 2012-08-22T13:49:23.270 に答える
1

単純なバッチスクリプトを使用することに反対しない場合は、次のように使用できます。

必要に応じて、HKUの前にコンピューター名(\ Computer \ HKUなど)を追加して、リモートで実行することもできます。管理者として実行する必要があります(昇格)

for /F  "delims=\ tokens=1,*" %%t in ('reg query HKU') do reg add HKU\%%u\Software\AcmeSoft\AcmeApp /ve
for /F  "delims=\ tokens=1,*" %%t in ('reg query HKU') do reg add HKU\%%u\Software\AcmeSoft\AcmeApp /v InstallLocation /d C:\\Program Files (x86)\\AcmeApp
于 2012-08-22T11:41:07.983 に答える