public static CaParameters ExtractFromSession(Session session) { const string createHkcuCommandKey = "CREATE_HKCU_OPEN_FULL"; const string createGuidKey = "ACTIVESETUP_GUID"; const string productNameKey = "PRODUCTNAME"; const string companyNameKey = "COMPANYNAME"; const string versionKey = "VERSION"; const string removeHkcuCommand = "REMOVE_HKCU_OPEN_FULL"; string productName = ExtractAndCheck(session, productNameKey); string version = ExtractAndCheck(session, versionKey); string createCommand = ExtractAndCheck(session, createHkcuCommandKey); string createActiveSetupGuid = ExtractAndCheck(session, createGuidKey); string removeCommand = ExtractAndCheck(session, removeHkcuCommand); string companyName = ExtractAndCheck(session, companyNameKey); var caParams = new CaParameters() { ActiveSetupGuid = createActiveSetupGuid, CreateCommand = createCommand, ProductName = productName, Version = version, RemoveCommand = removeCommand, CompanyName = companyName }; return(caParams); }
public static ActionResult CaActiveSetup_RemoveHKCU(Session session) { Action action = () => { var registryAbstractor = new RegistryAbstractor(session); //Set the Active Setup ot IsInstalled = 0 and change the StubPath var caParams = CaParameters.ExtractFromSession(session); registryAbstractor.DeleteHkcuKey(caParams.RegistrySubKey); }; var runner = new CaRunner(session); return(runner.RunAction(action, "CaActiveSetup_RemoveHKCU")); }
public static ActionResult CaActiveSetup_SetHKLM(Session session) { Action action = () => { var registryAbstractor = new RegistryAbstractor(session); var caParams = CaParameters.ExtractFromSession(session); //install the active setup that will set the OPEN key. using (RegistryKey hklmKey = registryAbstractor.OpenOrCreateHklmKey(caParams.RegistrySubKey)) { UpdateActiveSetupHklmKey(hklmKey, caParams.Default, caParams.CreateComponentId, caParams.CreateCommand, caParams.RemoveCommand, caParams.Version, true); } }; var runner = new CaRunner(session); return(runner.RunAction(action, "CaActiveSetup_SetHKLM")); }
public static ActionResult CaActiveSetup_SetHKCU(Session session) { Action action = () => { var registryAbstractor = new RegistryAbstractor(session); //Set the Active Setup ot IsInstalled = 0 and change the StubPath var caParams = CaParameters.ExtractFromSession(session); using (RegistryKey hkcuKey = registryAbstractor.OpenOrCreateHkcuKey(caParams.RegistrySubKey)) { UpdateHkcuActiveSetupKey(hkcuKey, caParams.Version); } }; var runner = new CaRunner(session); return(runner.RunAction(action, "CaActiveSetup_SetHKCU")); }
public static ActionResult CaActiveSetup_RemoveHKLM(Session session) { Action action = () => { var registryAbstractor = new RegistryAbstractor(session); //Set the Active Setup ot IsInstalled = 0 and change the StubPath var caParams = CaParameters.ExtractFromSession(session); using (RegistryKey createHklmKey = registryAbstractor.OpenOrCreateHklmKey(caParams.RegistrySubKey)) { UpdateActiveSetupHklmKey(createHklmKey, caParams.Default, caParams.CreateComponentId, caParams.CreateCommand, caParams.RemoveCommand, caParams.Version, false); } }; var runner = new CaRunner(session); return(runner.RunAction(action, "CaActiveSetup_RemoveHKLM")); }
public static CaParameters ExtractFromSession(Session session) { const string createHkcuCommandKey = "CREATE_HKCU_OPEN_FULL"; const string createGuidKey = "ACTIVESETUP_GUID"; const string productNameKey = "PRODUCTNAME"; const string companyNameKey = "COMPANYNAME"; const string versionKey = "VERSION"; const string removeHkcuCommand = "REMOVE_HKCU_OPEN_FULL"; string productName = ExtractAndCheck(session, productNameKey); string version = ExtractAndCheck(session, versionKey); string createCommand = ExtractAndCheck(session, createHkcuCommandKey); string createActiveSetupGuid = ExtractAndCheck(session, createGuidKey); string removeCommand = ExtractAndCheck(session, removeHkcuCommand); string companyName = ExtractAndCheck(session, companyNameKey); var caParams = new CaParameters() { ActiveSetupGuid = createActiveSetupGuid, CreateCommand = createCommand, ProductName = productName, Version = version, RemoveCommand = removeCommand, CompanyName = companyName }; return caParams; }