< prev index next >
src/jdk.jpackage/windows/native/libjpackage/WindowsRegistry.cpp
Print this page
*** 42,53 ****
/*
* Class: jdk_jpackage_internal_WindowsRegistry
* Method: readDwordValue
* Signature: (ILjava/lang/String;Ljava/lang/String;I)I
*/
! JNIEXPORT jint JNICALL Java_jdk_jpackage_internal_WindowsRegistry_readDwordValue(
! JNIEnv *pEnv, jclass c, jint key, jstring jSubKey, jstring jValue, jint defaultValue) {
jint jResult = defaultValue;
if (key != jdk_jpackage_internal_WindowsRegistry_HKEY_LOCAL_MACHINE) {
return jResult;
}
--- 42,55 ----
/*
* Class: jdk_jpackage_internal_WindowsRegistry
* Method: readDwordValue
* Signature: (ILjava/lang/String;Ljava/lang/String;I)I
*/
! JNIEXPORT jint JNICALL
! Java_jdk_jpackage_internal_WindowsRegistry_readDwordValue(
! JNIEnv *pEnv, jclass c, jint key, jstring jSubKey,
! jstring jValue, jint defaultValue) {
jint jResult = defaultValue;
if (key != jdk_jpackage_internal_WindowsRegistry_HKEY_LOCAL_MACHINE) {
return jResult;
}
*** 76,86 ****
/*
* Class: jdk_jpackage_internal_WindowsRegistry
* Method: openRegistryKey
* Signature: (ILjava/lang/String;)J
*/
! JNIEXPORT jlong JNICALL Java_jdk_jpackage_internal_WindowsRegistry_openRegistryKey(
JNIEnv *pEnv, jclass c, jint key, jstring jSubKey) {
if (key != jdk_jpackage_internal_WindowsRegistry_HKEY_LOCAL_MACHINE) {
return 0;
}
--- 78,89 ----
/*
* Class: jdk_jpackage_internal_WindowsRegistry
* Method: openRegistryKey
* Signature: (ILjava/lang/String;)J
*/
! JNIEXPORT jlong JNICALL
! Java_jdk_jpackage_internal_WindowsRegistry_openRegistryKey(
JNIEnv *pEnv, jclass c, jint key, jstring jSubKey) {
if (key != jdk_jpackage_internal_WindowsRegistry_HKEY_LOCAL_MACHINE) {
return 0;
}
*** 98,117 ****
/*
* Class: jdk_jpackage_internal_WindowsRegistry
* Method: enumRegistryValue
* Signature: (JI)Ljava/lang/String;
*/
! JNIEXPORT jstring JNICALL Java_jdk_jpackage_internal_WindowsRegistry_enumRegistryValue(
JNIEnv *pEnv, jclass c, jlong lKey, jint jIndex) {
HKEY hKey = (HKEY)lKey;
! TCHAR valueName[VALUE_NAME_SIZE] = {0}; // Max value name size per MSDN plus NULL
DWORD cchValueName = VALUE_NAME_SIZE;
! LSTATUS status = RegEnumValue(hKey, (DWORD)jIndex, valueName, &cchValueName,
! NULL, NULL, NULL, NULL);
if (status == ERROR_SUCCESS) {
size_t chLength = 0;
! if (StringCchLength(valueName, VALUE_NAME_SIZE, &chLength) == S_OK) {
return GetJStringFromString(pEnv, valueName, (jsize)chLength);
}
}
return NULL;
--- 101,122 ----
/*
* Class: jdk_jpackage_internal_WindowsRegistry
* Method: enumRegistryValue
* Signature: (JI)Ljava/lang/String;
*/
! JNIEXPORT jstring JNICALL
! Java_jdk_jpackage_internal_WindowsRegistry_enumRegistryValue(
JNIEnv *pEnv, jclass c, jlong lKey, jint jIndex) {
HKEY hKey = (HKEY)lKey;
! TCHAR valueName[VALUE_NAME_SIZE] = {0}; // Max size per MSDN plus NULL
DWORD cchValueName = VALUE_NAME_SIZE;
! LSTATUS status = RegEnumValue(hKey, (DWORD)jIndex, valueName,
! &cchValueName, NULL, NULL, NULL, NULL);
if (status == ERROR_SUCCESS) {
size_t chLength = 0;
! if (StringCchLength(valueName, VALUE_NAME_SIZE, &chLength)
! == S_OK) {
return GetJStringFromString(pEnv, valueName, (jsize)chLength);
}
}
return NULL;
*** 120,141 ****
/*
* Class: jdk_jpackage_internal_WindowsRegistry
* Method: closeRegistryKey
* Signature: (J)V
*/
! JNIEXPORT void JNICALL Java_jdk_jpackage_internal_WindowsRegistry_closeRegistryKey(
JNIEnv *pEnc, jclass c, jlong lKey) {
HKEY hKey = (HKEY)lKey;
RegCloseKey(hKey);
}
/*
* Class: jdk_jpackage_internal_WindowsRegistry
* Method: comparePaths
* Signature: (Ljava/lang/String;Ljava/lang/String;)Z
*/
! JNIEXPORT jboolean JNICALL Java_jdk_jpackage_internal_WindowsRegistry_comparePaths(
JNIEnv *pEnv, jclass c, jstring jPath1, jstring jPath2) {
wstring path1 = GetStringFromJString(pEnv, jPath1);
wstring path2 = GetStringFromJString(pEnv, jPath2);
path1 = GetLongPath(path1);
--- 125,148 ----
/*
* Class: jdk_jpackage_internal_WindowsRegistry
* Method: closeRegistryKey
* Signature: (J)V
*/
! JNIEXPORT void JNICALL
! Java_jdk_jpackage_internal_WindowsRegistry_closeRegistryKey(
JNIEnv *pEnc, jclass c, jlong lKey) {
HKEY hKey = (HKEY)lKey;
RegCloseKey(hKey);
}
/*
* Class: jdk_jpackage_internal_WindowsRegistry
* Method: comparePaths
* Signature: (Ljava/lang/String;Ljava/lang/String;)Z
*/
! JNIEXPORT jboolean JNICALL
! Java_jdk_jpackage_internal_WindowsRegistry_comparePaths(
JNIEnv *pEnv, jclass c, jstring jPath1, jstring jPath2) {
wstring path1 = GetStringFromJString(pEnv, jPath1);
wstring path2 = GetStringFromJString(pEnv, jPath2);
path1 = GetLongPath(path1);
< prev index next >