I have the following:

dotnet_exists = Registry.DoesKeyExist(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\.NETFramework\\policy\\v1.1" );
if dotnet_exists then
Button.SetVisible("install_dotnet", false);
Button.SetVisible("install_dotnet_top", true);
Button.SetEnabled("install_dotnet", false);
Button.SetEnabled("install_dotnet_top", true);
else
Button.SetVisible("install_dotnet_top", false);
Button.SetVisible("install_dotnet", true);
Button.SetEnabled("install_dotnet_top", false);
Button.SetEnabled("install_dotnet", true);
end

For some reason, it always sets install_dotnet to enabled and visible.

TIA

Kurt