Beispiel #1
0
BOOL findJavaHome(char* path, const int jdkPreference)
{
    regSearchJreSdk("SOFTWARE\\JavaSoft\\Java Runtime Environment",
                    "SOFTWARE\\JavaSoft\\Java Development Kit",
                    jdkPreference);

    if (foundJava == NO_JAVA_FOUND)
    {
        regSearchJreSdk("SOFTWARE\\IBM\\Java2 Runtime Environment",
                        "SOFTWARE\\IBM\\Java Development Kit",
                        jdkPreference);
    }

    if (foundJava != NO_JAVA_FOUND)
    {
        strcpy(path, foundJavaHome);
        debug("Runtime used:\t%s (%s-bit)\n", foundJavaVer,
              (foundJava & KEY_WOW64_64KEY) != NO_JAVA_FOUND ? "64" : "32");
        return TRUE;
    }

    return FALSE;
}
Beispiel #2
0
BOOL findJavaHome(char* path, const int jdkPreference) {
	regSearchJreSdk("SOFTWARE\\JavaSoft\\Java Runtime Environment",
					"SOFTWARE\\JavaSoft\\Java Development Kit",
					jdkPreference);
	if (foundJava == NO_JAVA_FOUND) {
		regSearchJreSdk("SOFTWARE\\IBM\\Java2 Runtime Environment",
						"SOFTWARE\\IBM\\Java Development Kit",
						jdkPreference);
	}
	if (foundJava != NO_JAVA_FOUND) {
		HKEY hKey;
		if (RegOpenKeyEx(HKEY_LOCAL_MACHINE,
				foundJavaKey,
				0,
	            KEY_READ | (foundJava & KEY_WOW64_64KEY),
				&hKey) == ERROR_SUCCESS) {
			unsigned char buffer[BIG_STR] = {0};
			unsigned long bufferlength = BIG_STR;
			unsigned long datatype;
			if (RegQueryValueEx(hKey, "JavaHome", NULL, &datatype, buffer,
					&bufferlength) == ERROR_SUCCESS) {
				int i = 0;
				do {
					path[i] = buffer[i];
				} while (path[i++] != 0);
                // (foundJava & FOUND_SDK) {  // removed by fry
                //    appendPath(path, "jre");
                //
				RegCloseKey(hKey);
				return TRUE;
			}
			RegCloseKey(hKey);
		}
	}
	return FALSE;
}
Beispiel #3
0
BOOL findJavaHome(char* path, const int jdkPreference) {
	regSearchJreSdk("SOFTWARE\\JavaSoft\\Java Runtime Environment",
					"SOFTWARE\\JavaSoft\\Java Development Kit",
					jdkPreference);
	if (foundJava == NO_JAVA_FOUND) {
		regSearchJreSdk("SOFTWARE\\IBM\\Java2 Runtime Environment",
						"SOFTWARE\\IBM\\Java Development Kit",
						jdkPreference);
	}
	if (foundJava != NO_JAVA_FOUND) {
		HKEY hKey;
		if (RegOpenKeyEx(HKEY_LOCAL_MACHINE,
				TEXT(foundJavaKey),
				0,
	            regWow64Option | KEY_QUERY_VALUE,
				&hKey) == ERROR_SUCCESS) {
			unsigned char buffer[BIG_STR] = {0};
			unsigned long bufferlength = BIG_STR;
			unsigned long datatype;
			if (RegQueryValueEx(hKey, "JavaHome", NULL, &datatype, buffer,
					&bufferlength) == ERROR_SUCCESS) {
				int i = 0;
				do {
					path[i] = buffer[i];
				} while (path[i++] != 0);
				if (foundJava == FOUND_SDK) {
					strcat(path, "\\jre");
				}
				RegCloseKey(hKey);
				return TRUE;
			}
			RegCloseKey(hKey);
		}
	}
	return FALSE;
}