本文整理汇总了C++中CChatChannel::GetPassword方法的典型用法代码示例。如果您正苦于以下问题:C++ CChatChannel::GetPassword方法的具体用法?C++ CChatChannel::GetPassword怎么用?C++ CChatChannel::GetPassword使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CChatChannel
的用法示例。
在下文中一共展示了CChatChannel::GetPassword方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: JoinChannel
bool CChat::JoinChannel(CChatChanMember * pMember, LPCTSTR pszChannel, LPCTSTR pszPassword)
{
ADDTOCALLSTACK("CChat::JoinChannel");
ASSERT(pMember != NULL);
CClient * pMemberClient = pMember->GetClient();
ASSERT(pMemberClient != NULL);
// Are we in a channel now?
CChatChannel * pCurrentChannel = pMember->GetChannel();
if (pCurrentChannel != NULL)
{
// Is it the same channel as the one I'm already in?
if (strcmp(pszChannel, pCurrentChannel->GetName()) == 0)
{
// Tell them and return
pMember->SendChatMsg(CHATMSG_AlreadyInConference, pszChannel);
return false;
}
}
CChatChannel * pNewChannel = FindChannel(pszChannel);
if (pNewChannel == NULL)
{
pMemberClient->addChatSystemMessage(CHATMSG_NoConference, pszChannel );
return false;
}
// If there's a password, is it the correct one?
if (strcmp(pNewChannel->GetPassword(), pszPassword) != 0)
{
pMemberClient->addChatSystemMessage(CHATMSG_IncorrectPassword);
return false;
}
// Leave the old channel 1st
// Remove from old channel (if any)
if (pCurrentChannel != NULL)
{
// Remove myself from the channels list of members
pCurrentChannel->RemoveMember(pMember);
// If noone is left, tell the chat system to delete it from memory
if (pCurrentChannel->m_Members.GetCount() <= 0)
{
// Am I the last one here? Delete it from all other clients?
DeleteChannel(pCurrentChannel);
}
// Since we left, clear all members from our client that might be in our list from the channel we just left
pMemberClient->addChatSystemMessage(CHATMSG_ClearMemberList);
}
// Now join a new channel
// Add all the members of the channel to the clients list of channel participants
pNewChannel->SendMembers(pMember);
// Add ourself to the channels list of members
if (!pNewChannel->AddMember(pMember))
return false;
// Set the channel name title bar
pMemberClient->addChatSystemMessage(CHATMSG_UpdateChannelBar, pszChannel);
// Now send out my name to all clients in this channel
pNewChannel->SendThisMember(pMember);
return true;
}