Сделал я то, что хотел. Назвал в контекстом меню пункт как Force Run As Invoker (UAC) вместо задуманного Force Run As Limited User in UAC т.к. не используется сторонняя программа для понижения прав, а используются лишь штатные средства.
Вот сам твик реестра.
Код:

Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\*\shell\forcerunasinvoker]
@="Force Run As Invoker (UAC)"
[HKEY_CLASSES_ROOT\*\shell\forcerunasinvoker\command]
@="cmd /C \"REG ADD \"HKCU\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\AppCompatFlags\\Layers\" /v \"%1\" /t REG_SZ /d RunAsInvoker && start \"\" \"%1\" && REG DELETE \"HKCU\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\AppCompatFlags\\Layers\" /v \"%1\" /f\""
Принцип действия простой - изменяется реестр как описано здесь:
Цитата Petya V4sechkin:
можно в разделе реестра
HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers
создать параметр: полный_путь_к_программе.exe = RUNASINVOKER
|
Потом программа запускается, а после та запись удаляется из реестра.