
Я борюсь, чтобы это работало правильно. Этот .reg при импорте работает на поверхности, однако при выполнении я получаю сообщение "Этот идентификатор безопасности не может быть назначен владельцем этого объекта"
Я предполагаю, что это связано с тем, что cmd не запущен от имени администратора. Может кто-нибудь посоветовать, как изменить команду? Я полагаю, исходя из прошлых встреч с похожими требованиями, вам нужно сначала использовать powershell, чтобы открыть cmd или что-то в этом роде?
Вот регфайл
[HKEY_CLASSES_ROOT\*\shell\RestoreOwnership]
"HasLUAShield"=""
"MUIVerb"="Restore Ownership"
"NoWorkingDirectory"=""
"NeverDefault"=""
"SubCommands"=""
[HKEY_CLASSES_ROOT\*\shell\RestoreOwnership\Shell]
[HKEY_CLASSES_ROOT\*\shell\RestoreOwnership\Shell\RestoreOwnershipSYSTEM]
"HasLUAShield"=""
"MUIVerb"="Restore to System"
[HKEY_CLASSES_ROOT\*\shell\RestoreOwnership\Shell\RestoreOwnershipSYSTEM\command]
@="cmd.exe /c icacls \"%1\" /setowner \"SYSTEM\" /t /c & pause"
"IsolatedCommand"="cmd.exe /c icacls \"%1\" /setowner \"SYSTEM\" /t /c & pause"
[HKEY_CLASSES_ROOT\*\shell\RestoreOwnership\Shell\RestoreOwnershipTrustedInstaller]
"HasLUAShield"=""
"MUIVerb"="Restore to TrustedInstaller"
[HKEY_CLASSES_ROOT\*\shell\RestoreOwnership\Shell\RestoreOwnershipTrustedInstaller\command]
@="cmd.exe /c icacls \"%1\" /setowner \"NT Service\\TrustedInstaller\" /t /c & pause"
"IsolatedCommand"="cmd.exe /c icacls \"%1\" /setowner \"NT Service\\TrustedInstaller\" /t /c & pause"
[HKEY_CLASSES_ROOT\Directory\shell\RestoreOwnership]
"HasLUAShield"=""
"MUIVerb"="Restore Ownership"
"NoWorkingDirectory"=""
"NeverDefault"=""
"SubCommands"=""
[HKEY_CLASSES_ROOT\Directory\shell\RestoreOwnership\Shell]
[HKEY_CLASSES_ROOT\Directory\shell\RestoreOwnership\Shell\RestoreOwnershipSYSTEM]
"HasLUAShield"=""
"MUIVerb"="Restore to System"
[HKEY_CLASSES_ROOT\Directory\shell\RestoreOwnership\Shell\RestoreOwnershipSYSTEM\command]
@="cmd.exe /c icacls \"%1\" /setowner \"SYSTEM\" /t /c & pause"
"IsolatedCommand"="cmd.exe /c icacls \"%1\" /setowner \"SYSTEM\" /t /c & pause"
[HKEY_CLASSES_ROOT\Directory\shell\RestoreOwnership\Shell\RestoreOwnershipTrustedInstaller]
"HasLUAShield"=""
"MUIVerb"="Restore to TrustedInstaller"
[HKEY_CLASSES_ROOT\Directory\shell\RestoreOwnership\Shell\RestoreOwnershipTrustedInstaller\command]
@="cmd.exe /c icacls \"%1\" /setowner \"NT Service\\TrustedInstaller\" /t /c & pause"
"IsolatedCommand"="cmd.exe /c icacls \"%1\" /setowner \"NT Service\\TrustedInstaller\" /t /c & pause"
Ну, у меня СИСТЕМА работает.
[HKEY_CLASSES_ROOT\*\shell\RestoreOwnership]
"MUIVerb"="Restore Ownership"
"HasLUAShield"=""
"SubCommands"=""
[HKEY_CLASSES_ROOT\*\shell\RestoreOwnership\shell\RestoreOwnershipSYSTEM]
@="Restore Ownership SYSTEM"
"HasLUAShield"=""
[HKEY_CLASSES_ROOT\*\shell\RestoreOwnership\shell\RestoreOwnershipSYSTEM\command]
@="powershell -windowstyle hidden -command \"Start-Process cmd -ArgumentList '/c icacls \\\"%1\\\" /setowner \"SYSTEM\" /t /c /l & pause' -Verb runAs\""
"IsolatedCommand"="powershell -windowstyle hidden -command \"Start-Process cmd -ArgumentList '/c icacls \\\"%1\\\" /setowner \"SYSTEM\" /t /c /l & pause' -Verb runAs\""
[HKEY_CLASSES_ROOT\*\shell\RestoreOwnership\shell\RestoreOwnershipTrustedInstaller]
@="Restore Ownership TrustedInstaller"
"HasLUAShield"=""
[HKEY_CLASSES_ROOT\*\shell\RestoreOwnership\shell\RestoreOwnershipTrustedInstaller\command]
@="powershell -windowstyle hidden -command \"Start-Process cmd -ArgumentList '/c icacls \\\"%1\\\" /setowner \"NT Service\\TrustedInstaller\" /t /c /l & pause' -Verb runAs\""
"IsolatedCommand"="powershell -windowstyle hidden -command \"Start-Process cmd -ArgumentList '/c icacls \\\"%1\\\" /setowner \"NT Service\\TrustedInstaller\" /t /c /l & pause' -Verb runAs\""
К сожалению, TrustedInstaller все еще терпит неудачу
Invalid parameter "Service\TrustedInstaller"
Я знаю, что это должно быть что-то глупое и простое, чего мне не хватает...
решение1
Окончательный ответ. Все крутилось вокруг форматирования.
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\*\shell\Ownership]
"HasLUAShield"=""
"MUIVerb"="Ownership"
"NoWorkingDirectory"=""
"NeverDefault"=""
"SubCommands"=""
[HKEY_CLASSES_ROOT\*\shell\Ownership\Shell]
[HKEY_CLASSES_ROOT\*\shell\Ownership\Shell\flyout01]
"HasLUAShield"=""
"MUIVerb"="Take ownership"
[HKEY_CLASSES_ROOT\*\shell\Ownership\Shell\flyout01\command]
@="powershell -windowstyle hidden -command \"Start-Process cmd -ArgumentList '/c takeown /f \\\"%1\\\" && icacls \\\"%1\\\" /grant *S-1-3-4:F /t /c /l & pause' -Verb runAs\""
"IsolatedCommand"="powershell -windowstyle hidden -command \"Start-Process cmd -ArgumentList '/c takeown /f \\\"%1\\\" && icacls \\\"%1\\\" /grant *S-1-3-4:F /t /c /l & pause' -Verb runAs\""
[HKEY_CLASSES_ROOT\*\shell\Ownership\Shell\flyout02]
"CommandFlags"=dword:00000020
"HasLUAShield"=""
"MUIVerb"="Restore to administrators"
[HKEY_CLASSES_ROOT\*\shell\Ownership\Shell\flyout02\command]
@="powershell -windowstyle hidden -command \"Start-Process cmd -ArgumentList '/c icacls \\\"%1\\\" /setowner \"Administrators\" /t /c /l & pause' -Verb runAs\""
"IsolatedCommand"="powershell -windowstyle hidden -command \"Start-Process cmd -ArgumentList '/c icacls \\\"%1\\\" /setowner \"Administrators\" /t /c /l & pause' -Verb runAs\""
[HKEY_CLASSES_ROOT\*\shell\Ownership\Shell\flyout03]
"HasLUAShield"=""
"MUIVerb"="Restore to system"
[HKEY_CLASSES_ROOT\*\shell\Ownership\Shell\flyout03\command]
@="powershell -windowstyle hidden -command \"Start-Process cmd -ArgumentList '/c icacls \\\"%1\\\" /setowner \"SYSTEM\" /t /c /l & pause' -Verb runAs\""
"IsolatedCommand"="powershell -windowstyle hidden -command \"Start-Process cmd -ArgumentList '/c icacls \\\"%1\\\" /setowner \"SYSTEM\" /t /c /l & pause' -Verb runAs\""
[HKEY_CLASSES_ROOT\*\shell\Ownership\Shell\flyout04]
"HasLUAShield"=""
"MUIVerb"="Restore to trustedinstaller"
[HKEY_CLASSES_ROOT\*\shell\Ownership\Shell\flyout04\command]
@="powershell -windowstyle hidden -command \"Start-Process cmd -ArgumentList '/c icacls \\\"%1\\\" /setowner \"\"\"NT Service\\TrustedInstaller\"\"\" /t /c /l & pause' -Verb runAs\""
"IsolatedCommand"="powershell -windowstyle hidden -command \"Start-Process cmd -ArgumentList '/c icacls \\\"%1\\\" /setowner \"\"\"NT Service\\TrustedInstaller\"\"\" /t /c /l & pause' -Verb runAs\""
[HKEY_CLASSES_ROOT\Directory\shell\Ownership]
"HasLUAShield"=""
"MUIVerb"="Ownership"
"NoWorkingDirectory"=""
"NeverDefault"=""
"SubCommands"=""
[HKEY_CLASSES_ROOT\Directory\shell\Ownership\Shell]
[HKEY_CLASSES_ROOT\Directory\shell\Ownership\Shell\flyout01]
"HasLUAShield"=""
"MUIVerb"="Take ownership"
[HKEY_CLASSES_ROOT\Directory\shell\Ownership\Shell\flyout01\command]
@="powershell -windowstyle hidden -command \"Start-Process cmd -ArgumentList '/c takeown /f \\\"%1\\\" && icacls \\\"%1\\\" /grant *S-1-3-4:F /t /c /l & pause' -Verb runAs\""
"IsolatedCommand"="powershell -windowstyle hidden -command \"Start-Process cmd -ArgumentList '/c takeown /f \\\"%1\\\" && icacls \\\"%1\\\" /grant *S-1-3-4:F /t /c /l & pause' -Verb runAs\""
[HKEY_CLASSES_ROOT\Directory\shell\Ownership\Shell\flyout02]
"CommandFlags"=dword:00000020
"HasLUAShield"=""
"MUIVerb"="Restore to administrators"
[HKEY_CLASSES_ROOT\Directory\shell\Ownership\Shell\flyout02\command]
@="powershell -windowstyle hidden -command \"Start-Process cmd -ArgumentList '/c icacls \\\"%1\\\" /setowner \"Administrators\" /t /c /l & pause' -Verb runAs\""
"IsolatedCommand"="powershell -windowstyle hidden -command \"Start-Process cmd -ArgumentList '/c icacls \\\"%1\\\" /setowner \"Administrators\" /t /c /l & pause' -Verb runAs\""
[HKEY_CLASSES_ROOT\Directory\shell\Ownership\Shell\flyout03]
"HasLUAShield"=""
"MUIVerb"="Restore to system"
[HKEY_CLASSES_ROOT\Directory\shell\Ownership\Shell\flyout03\command]
@="powershell -windowstyle hidden -command \"Start-Process cmd -ArgumentList '/c icacls \\\"%1\\\" /setowner \"SYSTEM\" /t /c /l & pause' -Verb runAs\""
"IsolatedCommand"="powershell -windowstyle hidden -command \"Start-Process cmd -ArgumentList '/c icacls \\\"%1\\\" /setowner \"SYSTEM\" /t /c /l & pause' -Verb runAs\""
[HKEY_CLASSES_ROOT\Directory\shell\Ownership\Shell\flyout04]
"HasLUAShield"=""
"MUIVerb"="Restore to trustedinstaller"
[HKEY_CLASSES_ROOT\Directory\shell\Ownership\Shell\flyout04\command]
@="powershell -windowstyle hidden -command \"Start-Process cmd -ArgumentList '/c icacls \\\"%1\\\" /setowner \"\"\"NT Service\\TrustedInstaller\"\"\" /t /c /l & pause' -Verb runAs\""
"IsolatedCommand"="powershell -windowstyle hidden -command \"Start-Process cmd -ArgumentList '/c icacls \\\"%1\\\" /setowner \"\"\"NT Service\\TrustedInstaller\"\"\" /t /c /l & pause' -Verb runAs\""