Здравствуйте, подскажите пожалуйста как быть в такой ситуации:
профайл почтого клиента стоит не по умолчанию(вроде как) и функция
hRes = MAPILogonEx(0,
NULL,//profile name
NULL,//password - This parameter should ALWAYS be NULL
MAPI_LOGON_UI | MAPI_SERVICE_UI_ALWAYS , //Not allow a profile picker box to show if not logged in
&lpMAPISession);//handle of session
Возвращает не валидный hRes...
Т.е. не логинится...Как поступить в таком случае?
Я не знаю получиться ли через реестер
LONG IRes = RegOpenKeyEx(HKEY_CURRENT_USER, "Software\\Microsoft\\Windows NT\\CurrentVersion\\Windows Messaging Subsystem\\Profiles\\", 0, KEY_READ, &hKey);
if(IRes == ERROR_SUCCESS)
{
DWORD dwType = 0;
DWORD dwCount = 0;
IRes = RegQueryValueEx(hKey, "DefaultProfile", NULL, &dwType, NULL, &dwCount);
LPSTR lpszDataBuf = (LPSTR)malloc(dwCount *sizeof(char));
IRes = RegQueryValueEx(hKey, "DefaultProfile", NULL, &dwType, (LPBYTE)lpszDataBuf, &dwCount);
strProfileName = lpszDataBuf;
free(lpszDataBuf);
RegCloseKey(hKey);
}
Ведь там скорее лежат дефолтные профайлы...Или вообще все???
Подскажите пожалуйста, а то сам попробовать не могу, у меня все по дефолту, как поменять не знаю, а надо устроить сессию с недефолтом
Товарищи, кто ведает в MAPI подскажите пожалуйста, как за логитса, очень надо решить данный вопрос! Заранее благодарен.
Здравствуйте, sosna, Вы писали:
S>Товарищи, кто ведает в MAPI подскажите пожалуйста, как за логитса, очень надо решить данный вопрос! Заранее благодарен.
попробуй так:
MAPILogonEx((ULONG)hWnd, NULL, NULL, MAPI_NEW_SESSION | MAPI_EXTENDED | MAPI_LOGON_UI, &pSession)
MAPI_EXTENDED
Log on with extended capabilities. This flag should always be set. The older MAPILogon function is no longer available.
MAPI_NEW_SESSION
An attempt should be made to create a new MAPI session rather than acquire the shared session. If the MAPI_NEW_SESSION flag is not set, MAPILogonEx uses an existing shared session even if the lpszprofileName parameter is not NULL.