diff options
author | hristoterezov <hristo@jitsi.org> | 2014-04-22 19:25:12 +0300 |
---|---|---|
committer | hristoterezov <hristo@jitsi.org> | 2014-04-22 19:25:12 +0300 |
commit | 10b422a198d2359da98ad4b5f30079285dc3ac12 (patch) | |
tree | 573beed283accd7f74b854e628fdab7c366590d7 /src/native/addrbook | |
parent | b726e3ecf9fa9326987013bccf7bab0daa1730bc (diff) | |
download | jitsi-10b422a198d2359da98ad4b5f30079285dc3ac12.zip jitsi-10b422a198d2359da98ad4b5f30079285dc3ac12.tar.gz jitsi-10b422a198d2359da98ad4b5f30079285dc3ac12.tar.bz2 |
Adds log messages for the Outlook registry checks.
Diffstat (limited to 'src/native/addrbook')
-rw-r--r-- | src/native/addrbook/msoutlook/MsOutlookAddrBookContactSourceService.cxx | 104 |
1 files changed, 100 insertions, 4 deletions
diff --git a/src/native/addrbook/msoutlook/MsOutlookAddrBookContactSourceService.cxx b/src/native/addrbook/msoutlook/MsOutlookAddrBookContactSourceService.cxx index d9b1e25..113623e 100644 --- a/src/native/addrbook/msoutlook/MsOutlookAddrBookContactSourceService.cxx +++ b/src/native/addrbook/msoutlook/MsOutlookAddrBookContactSourceService.cxx @@ -68,7 +68,7 @@ HRESULT MsOutlookAddrBookContactSourceService_MAPIInitialize 255 // The size limit of key name as documented in MSDN + 20 // \Outlook\InstallRoot + 1]; // The terminating null character - + MsOutlookUtils_log("Searching for outlook InstallRoot."); while (1) { LONG regEnumKeyEx; @@ -88,15 +88,23 @@ HRESULT MsOutlookAddrBookContactSourceService_MAPIInitialize NULL, NULL); if (ERROR_NO_MORE_ITEMS == regEnumKeyEx) + { + MsOutlookUtils_log("No more Software\\Microsoft\\Office items."); break; + } i++; if (ERROR_SUCCESS != regEnumKeyEx) + { + MsOutlookUtils_log("Error quering the next Software\\Microsoft\\Office item."); continue; + } str = installRootKeyName + subkeyNameLength; memcpy(str, _T("\\Outlook\\InstallRoot"), 20 * sizeof(TCHAR)); *(str + 20) = 0; + MsOutlookUtils_log("Trying to open the following key:"); + MsOutlookUtils_log(installRootKeyName); if (ERROR_SUCCESS == RegOpenKeyEx( regKey, @@ -105,6 +113,7 @@ HRESULT MsOutlookAddrBookContactSourceService_MAPIInitialize KEY_QUERY_VALUE, &installRootKey)) { + MsOutlookUtils_log("The key is opened successfully."); if ((ERROR_SUCCESS == RegQueryValueEx( installRootKey, @@ -116,6 +125,7 @@ HRESULT MsOutlookAddrBookContactSourceService_MAPIInitialize && (REG_SZ == pathValueType) && pathValueSize) { + MsOutlookUtils_log("Path value found."); LPTSTR pathValue; // MSDN says "the string may not have been stored with the @@ -131,7 +141,10 @@ HRESULT MsOutlookAddrBookContactSourceService_MAPIInitialize { pathValue = (LPTSTR)::malloc(pathValueSize); if (!pathValue) + { + MsOutlookUtils_log("Error with memory allocation for the pathValue."); continue; + } } if (ERROR_SUCCESS @@ -142,10 +155,12 @@ HRESULT MsOutlookAddrBookContactSourceService_MAPIInitialize NULL, (LPBYTE) pathValue, &pathValueSize)) { + MsOutlookUtils_log("The path value is retrieved"); DWORD pathValueLength = pathValueSize / sizeof(TCHAR); if (pathValueLength) { + MsOutlookUtils_log("The path value is retrieved successfully. The length is not 0."); DWORD fileAttributes; str = pathValue + (pathValueLength - 1); @@ -153,18 +168,42 @@ HRESULT MsOutlookAddrBookContactSourceService_MAPIInitialize str++; memcpy(str, _T("\\Outlook.exe"), 12 * sizeof(TCHAR)); *(str + 12) = 0; - + MsOutlookUtils_log("Trying to retrieve atributes for:"); + MsOutlookUtils_log(pathValue); fileAttributes = GetFileAttributes(pathValue); if (INVALID_FILE_ATTRIBUTES != fileAttributes) + { + MsOutlookUtils_log("The file exists."); hResult = S_OK; + } + else + { + MsOutlookUtils_log("The file doesn't exists"); + } } + else + { + MsOutlookUtils_log("Error - the length of the path value is 0."); + } } + else + { + MsOutlookUtils_log("Error retrieving the pathValue."); + } if (pathValue != installRootKeyName) free(pathValue); } + else + { + MsOutlookUtils_log("Error Path value not found."); + } RegCloseKey(installRootKey); } + else + { + MsOutlookUtils_log("Error openning the key."); + } } RegCloseKey(regKey); @@ -173,6 +212,7 @@ HRESULT MsOutlookAddrBookContactSourceService_MAPIInitialize // client. if (HR_SUCCEEDED(hResult)) { + MsOutlookUtils_log("Outlook is installed and we are checking if it is default mail client."); DWORD defaultValueType; // The buffer installRootKeyName is long enough to receive // "Microsoft Outlook" so use it in order to not have to allocate @@ -190,6 +230,7 @@ HRESULT MsOutlookAddrBookContactSourceService_MAPIInitialize KEY_QUERY_VALUE, ®Key)) { + MsOutlookUtils_log("HKCU\\Software\\Clients\\Mail exists."); DWORD defaultValueSize = defaultValueCapacity; LONG regQueryValueEx = RegQueryValueEx( regKey, @@ -203,6 +244,7 @@ HRESULT MsOutlookAddrBookContactSourceService_MAPIInitialize { case ERROR_SUCCESS: { + MsOutlookUtils_log("Successfull retrieve the default value of HKCU\\Software\\Clients\\Mail ."); if (REG_SZ == defaultValueType) { DWORD defaultValueLength @@ -213,34 +255,55 @@ HRESULT MsOutlookAddrBookContactSourceService_MAPIInitialize defaultValue, defaultValueLength)) { + MsOutlookUtils_log("The default value of HKCU\\Software\\Clients\\Mail is valid default mail client."); checkHKeyLocalMachine = JNI_FALSE; if (_tcsnicmp( _T("Microsoft Outlook"), defaultValue, defaultValueLength) == 0) + { + MsOutlookUtils_log("The default value of HKCU\\Software\\Clients\\Mail is Microsoft Office ."); hResult = S_OK; + } + else + { + MsOutlookUtils_log("The default value of HKCU\\Software\\Clients\\Mail is not Microsoft Office ."); + MsOutlookUtils_log(defaultValue); + } } else + { + MsOutlookUtils_log("Not valid default mail client for the default value of HKCU\\Software\\Clients\\Mail ."); checkHKeyLocalMachine = JNI_TRUE; + } } else + { + MsOutlookUtils_log("Wrong type for the default value of HKCU\\Software\\Clients\\Mail ."); checkHKeyLocalMachine = JNI_FALSE; + } break; } case ERROR_FILE_NOT_FOUND: + MsOutlookUtils_log("Failed to retrieve the default value of HKCU\\Software\\Clients\\Mail . ERROR_FILE_NOT_FOUND"); checkHKeyLocalMachine = JNI_TRUE; break; case ERROR_MORE_DATA: + MsOutlookUtils_log("Failed to retrieve the default value of HKCU\\Software\\Clients\\Mail . ERROR_MORE_DATA"); checkHKeyLocalMachine = JNI_FALSE; break; default: + MsOutlookUtils_log("Failed to retrieve the default value of HKCU\\Software\\Clients\\Mail . Unknown error."); checkHKeyLocalMachine = JNI_FALSE; break; } RegCloseKey(regKey); } else + { + MsOutlookUtils_log("Failed to open HKCU\\Software\\Clients\\Mail ."); checkHKeyLocalMachine = JNI_TRUE; + } if ((JNI_TRUE == checkHKeyLocalMachine) && (ERROR_SUCCESS == RegOpenKeyEx( @@ -250,6 +313,7 @@ HRESULT MsOutlookAddrBookContactSourceService_MAPIInitialize KEY_QUERY_VALUE, ®Key))) { + MsOutlookUtils_log("HKLM\\Software\\Clients\\Mail exists."); DWORD defaultValueSize = defaultValueCapacity; LONG regQueryValueEx = RegQueryValueEx( @@ -263,19 +327,44 @@ HRESULT MsOutlookAddrBookContactSourceService_MAPIInitialize && (REG_SZ == defaultValueType)) { DWORD defaultValueLength = defaultValueSize / sizeof(TCHAR); - + MsOutlookUtils_log("The default value of HKLM\\Software\\Clients\\Mail is retrieved ."); + if ((_tcsnicmp( _T("Microsoft Outlook"), defaultValue, defaultValueLength) == 0) && (JNI_TRUE == MsOutlookAddrBookContactSourceService_isValidDefaultMailClient(_T("Microsoft Outlook"), 17))) + { + MsOutlookUtils_log("The default value of HKLM\\Software\\Clients\\Mail is Microsoft Office ."); hResult = S_OK; + } + else + { + MsOutlookUtils_log("The default value of HKLM\\Software\\Clients\\Mail is not Microsoft Office ."); + MsOutlookUtils_log(defaultValue); + } } + else + { + MsOutlookUtils_log("Failed to retrieve the default value of HKLM\\Software\\Clients\\Mail ."); + } RegCloseKey(regKey); } + else + { + MsOutlookUtils_log("HKLM\\Software\\Clients\\Mail doesn't exists."); + } } + else + { + MsOutlookUtils_log("Outlook is not installed."); + } } + else + { + MsOutlookUtils_log("Error opening HKLM\\Software\\Microsoft\\Office registry."); + } // If we've determined that we'd like to go on with MAPI, try to load it. if (HR_SUCCEEDED(hResult)) @@ -571,7 +660,7 @@ MsOutlookAddrBookContactSourceService_isValidDefaultMailClient (LPCTSTR name, DWORD nameLength) { jboolean validDefaultMailClient = JNI_FALSE; - + MsOutlookUtils_log("We are validating the default mail client."); if ((0 != nameLength) && (0 != name[0])) { LPTSTR str; @@ -589,6 +678,8 @@ MsOutlookAddrBookContactSourceService_isValidDefaultMailClient _tcsncpy(str, name, nameLength); *(str + nameLength) = 0; + MsOutlookUtils_log("We are searching in HKLM for the key"); + MsOutlookUtils_log(keyName); if (ERROR_SUCCESS == RegOpenKeyEx( HKEY_LOCAL_MACHINE, @@ -597,9 +688,14 @@ MsOutlookAddrBookContactSourceService_isValidDefaultMailClient KEY_QUERY_VALUE, &key)) { + MsOutlookUtils_log("The key is found"); validDefaultMailClient = JNI_TRUE; RegCloseKey(key); } + else + { + MsOutlookUtils_log("The key for default mail client is not found"); + } } return validDefaultMailClient; } |