これが私がやろうとしていることです:
@ECHO OFF
CALL powershell -ExecutionPolicy RemoteSigned -Command "$sh = new-object -com 'Shell.Application'; $sh.ShellExecute('powershell', '-NoExit -Command "$path = """HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}""";echo $path"', '', 'runas')"
PAUSE
基本的に、ダブルクリックできるバッチ ファイルが必要です。このバッチ ファイルは、別の PowerShell スクリプトを呼び出す PowerShell スクリプトを実行しますが、管理者権限を要求し、そのコマンドを管理者として実行します。
ただし、二重引用符で問題が発生していると思います...多くのことを試しましたが、修正できないようです。powershellエラーメッセージは次のとおりです。
Bad numeric constant: 4D.
At line:1 char:57
+ $path = HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4D <<<< 36E972-E325-11C
E-BFC1-08002BE10318};echo $path
+ CategoryInfo : ParserError: (4D:String) [], ParentContainsError
RecordException
+ FullyQualifiedErrorId : BadNumericConstant
PS C:\Windows\system32>