2013-12-11 2 views
1

Это всегда отлично работало в Windows XP/Windows Server 2003, но я еще не смог заставить его работать прямо в Windows 7/Windows Server 2008 R2 ,Добавить запись в «Удаление или изменение программы» в Windows 7

Я также попытался положить это в Wow6432Node, но это тоже не работает. Я также пробовал различные комбинации этих записей в реестре, с кажущимся без эффекта.

Я искал это, но по какой-то причине я не могу найти ничего, связанного с этой проблемой. Я также не могу найти документацию Microsoft о том, как это сделать.

По существу, у нас есть большой причудливый сценарий Perl, который применяет параметры безопасности к системе, и ему нужно добавить запись в диалоговое окно «Удалить или изменить программу», чтобы установка была проверена позже. (В действительности сценарий аудита выглядит в реестре, поэтому он работает так, как есть, но было бы полезно, чтобы диалоговое окно также отображало его.)

Единственное, что должно быть уникальным в этой записи, это что его нельзя удалять или изменять.

В предыдущих версиях Windows эти записи реестра делали именно то, что я ожидал.

Вот экспорт значений реестра Я устанавливаю в настоящее время:

Windows Registry Editor Version 5.00 

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MyProgram] 
"DisplayName"="MyProgram" 
"DisplayVersion"="101.0400.4120.1305141001" 
"NoModify"=dword:00000001 
"NoRemove"=dword:00000001 
"NoRepair"=dword:00000001 
"Publisher"="My Company" 
"RegOwner"="My Company" 
"UninstallString"="" 
"VersionMajor"="4" 
"VersionMinor"="1" 

Кто-нибудь есть какие-либо мысли о том, как получить Windows, чтобы показать это в диалоге удаления? Есть ли еще какой-то другой шаг, который мне не хватает, чтобы заставить Windows обратить внимание на эту запись?

ответ

1

Я понял это, и это довольно очевидно. По какой-то причине должно быть что-то определенное как UninstallString, хотя оно никогда не будет выполнено, так как «программа» не может быть удалена. Я просто использовал %SYSTEMROOT%\system32\calc.exe, так как он всегда будет существовать в наших системах.

Смежные вопросы