logonscriptにExcelアドインをインストールする(cmdで現在のユーザーSIDを使用する方法)


1

logonscriptを使用して、クライアントにExcelアドインを追加しようとしています。GPOを使用して追加できるかどうかを確認しましたが、残念ながらできません(手動で除外することはできます-__- GG MS)。.xlamをアドインフォルダーにコピーしないのは、ネットワークドライブからアクセスする必要があるため、時々更新するためです。私の問題は、キーがCURRENT_USERの下にあるため、現在のユーザーのSIDが必要なことです。ここで私の質問は、ユーザーのSIDを取得し、.regファイルでfxを使用する方法ですか?

.regファイルは次のようになります。

Windows Registry Editor Version 5.00
[HKEY_USERS\\****SID****\Software\Microsoft\Office\12.0\Excel\Options]
"OPEN"="\"\\****MACRO****.xlam\""

ここでSIDを取得する最も簡単な方法は何ですか?

前もって感謝します!

回答:


1

現在のユーザーのSIDが必要です

を使用できますwmic

コマンドラインから:

wmic useraccount where name='%username%' get sid

F:\test>wmic useraccount where name='%username%' get sid
SID
S-1-5-21-1699878757-1063190524-3119395976-1000

バッチファイル(GetSID.cmd)から:

@echo off
setlocal
rem use findstr to strip blank lines from wmic output
rem skip the heading
for /f "usebackq skip=1" %%i in (`wmic useraccount where name^="%username%" get sid ^| findstr /r /v "^$"`) do (
  set _sid=%%i
  )
echo %_sid%
endlocal    

ノート:

  • バッチファイルには、%_sid%必要に応じて後で使用するためにSIDが保存されます。

使用例:

F:\test>GetSID
S-1-5-21-1699878757-1063190524-3119395976-1000

F:\test>

現在のユーザーのSIDを.regファイルで使用するにはどうすればよいですか?

最も簡単なオプションは、おそらくregコマンドを使用して、必要なキーをレジストリに直接追加することです。

次のバッチファイルを作成できます。

  1. wmicコマンドを実行します。

  2. SIDを環境変数(例:)に保存します%_sid%

  3. GetSID.cmd上記のバッチファイルで既にこれを実行しました。

  4. 適切なreg addコマンドを適切な%-sid%場所に追加して、レジストリに値を追加します。


参考文献

  • Windows CMDコマンドラインのAZインデックス -Windowsのcmdラインに関連するすべてのものに関する優れたリファレンス。
  • reg-レジストリキーと値の読み取り、設定、削除、.REGファイルの保存と復元。
  • wmic -Windows Management Instrumentationコマンド。

0

さて、私は私の問題のfacepalmソリューションを考え出しました。どうやら、キーはHKEY_CURRENT_USERの下にも存在するため、これがはるかに簡単なソリューションです。

しかし、他のソリューションに感謝します!私のソリューションでは、おそらくバッチファイルの実装方法を使用します。

包括的で優れた非常に高速なソリューション、Davidに感謝します!

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.