本文整理汇总了C++中MsgMapiListContext类的典型用法代码示例。如果您正苦于以下问题:C++ MsgMapiListContext类的具体用法?C++ MsgMapiListContext怎么用?C++ MsgMapiListContext使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了MsgMapiListContext类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: keyString
STDMETHODIMP CMapiImp::DeleteMail(unsigned long aSession, unsigned long ulUIParam, LPTSTR lpszMessageID,
unsigned long flFlags, unsigned long ulReserved)
{
PRInt32 irv;
nsCAutoString keyString((char *) lpszMessageID);
nsMsgKey msgKey = keyString.ToInteger(&irv);
if (irv)
return SUCCESS_SUCCESS;
MsgMapiListContext *listContext;
LONG ret = InitContext(aSession, &listContext);
if (ret != SUCCESS_SUCCESS)
return ret;
return (listContext->DeleteMessage(msgKey)) ? SUCCESS_SUCCESS : MAPI_E_INVALID_MESSAGE;
}
示例2: MsgMarkMapiMessageRead
extern "C" PRBool MsgMarkMapiMessageRead (nsIMsgFolder *folder, nsMsgKey key, PRBool read)
{
PRBool success = FALSE;
MsgMapiListContext *context = new MsgMapiListContext();
if (context)
{
if (NS_SUCCEEDED(context->OpenDatabase(folder)))
{
if (NS_SUCCEEDED(context->MarkRead (key, read)))
success = TRUE;
}
delete context;
}
return success;
}
示例3: keyString
STDMETHODIMP CMapiImp::DeleteMail(unsigned long aSession, unsigned long ulUIParam, LPTSTR lpszMessageID,
unsigned long flFlags, unsigned long ulReserved)
{
nsresult irv;
nsAutoCString keyString((char *) lpszMessageID);
nsMsgKey msgKey = keyString.ToInteger(&irv);
// XXX Why do we return success on failure?
if (NS_FAILED(irv))
return SUCCESS_SUCCESS;
MsgMapiListContext *listContext;
LONG ret = InitContext(aSession, &listContext);
if (ret != SUCCESS_SUCCESS)
return ret;
return (listContext->DeleteMessage(msgKey)) ? SUCCESS_SUCCESS : MAPI_E_INVALID_MESSAGE;
}
示例4: MSG_DeleteMapiMessage
/* Return TRUE on success, FALSE on failure */
extern "C" PRBool MSG_DeleteMapiMessage(nsIMsgFolder *folder, nsMsgKey key)
{
PRBool success = FALSE;
MsgMapiListContext *context = new MsgMapiListContext();
if (context)
{
if (NS_SUCCEEDED(context->OpenDatabase(folder)))
{
success = context->DeleteMessage(key);
}
delete context;
}
return success;
}
示例5: NS_ASSERTION
STDMETHODIMP CMapiImp::FindNext(unsigned long aSession, unsigned long ulUIParam, LPTSTR lpszMessageType,
LPTSTR lpszSeedMessageID, unsigned long flFlags, unsigned long ulReserved,
unsigned char lpszMessageID[64])
{
//
// If this is true, then this is the first call to this FindNext function
// and we should start the enumeration operation.
//
*lpszMessageID = '\0';
nsMAPIConfiguration * pMapiConfig = nsMAPIConfiguration::GetMAPIConfiguration() ;
if (!pMapiConfig)
{
NS_ASSERTION(PR_FALSE, "failed to get config in findnext");
return NS_ERROR_FAILURE ; // get the singelton obj
}
MsgMapiListContext *listContext;
LONG ret = InitContext(aSession, &listContext);
if (ret != SUCCESS_SUCCESS)
{
NS_ASSERTION(PR_FALSE, "init context failed");
return ret;
}
NS_ASSERTION(listContext, "initContext returned null context");
if (listContext)
{
// NS_ASSERTION(PR_FALSE, "find next init context succeeded");
nsMsgKey nextKey = listContext->GetNext();
if (nextKey == nsMsgKey_None)
{
pMapiConfig->SetMapiListContext(aSession, NULL);
delete listContext;
return(MAPI_E_NO_MESSAGES);
}
// TRACE("MAPI: ProcessMAPIFindNext() Found message id = %d\n", nextKey);
sprintf((char *) lpszMessageID, "%d", nextKey);
}
PR_LOG(MAPI, PR_LOG_DEBUG, ("CMapiImp::FindNext returning key %s\n", (char *) lpszMessageID));
return(SUCCESS_SUCCESS);
}