private JavaFindResult FindFormRegistry() { JavaFindResult result = FindFormRegistryFromBaseKey(ApplicationEnvironment.JavaRegistryNode); if (!result.IsSuccess && Environment.Is64BitOperatingSystem) { return(FindFormRegistryFromBaseKey(ApplicationEnvironment.JavaRegistryNodeCompat, true)); } return(result); }
public JavaFindResult FindJava() { JavaFindResult localIntegratedResult = null; JavaFindResult registryResult = null; foreach (var searchMode in ApplicationEnvironment.SearchModeOrder) { if ((searchMode == SearchMode.FromIntegrated || searchMode == SearchMode.FromIntegratedCompat) && localIntegratedResult == null) { localIntegratedResult = FindFromLocalIntegrated(); if (localIntegratedResult.IsSuccess && !localIntegratedResult.IsCompat) { return(localIntegratedResult); } } if ((searchMode == SearchMode.FromRegistry || searchMode == SearchMode.FromRegistryCompat) && registryResult == null) { registryResult = FindFormRegistry(); if (registryResult.IsSuccess && !registryResult.IsCompat) { return(registryResult); } } } foreach (var searchMode in ApplicationEnvironment.SearchModeOrder) { if (searchMode == SearchMode.FromRegistryCompat && registryResult != null) { return(registryResult); } if (searchMode == SearchMode.FromIntegratedCompat && localIntegratedResult != null) { return(localIntegratedResult); } } return(makeFault()); }