Ejemplo n.º 1
0
        private JavaFindResult FindFormRegistry()
        {
            JavaFindResult result = FindFormRegistryFromBaseKey(ApplicationEnvironment.JavaRegistryNode);

            if (!result.IsSuccess && Environment.Is64BitOperatingSystem)
            {
                return(FindFormRegistryFromBaseKey(ApplicationEnvironment.JavaRegistryNodeCompat, true));
            }

            return(result);
        }
Ejemplo n.º 2
0
        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());
        }