SetChatRoomName.cpp 940 字节
Newer Older
L
ljc545w 已提交
1 2 3 4 5 6 7 8
#include "pch.h"

struct ChatRoomNameStruct
{
    DWORD chatroomid;
    DWORD name;
};

L
ljc545w 已提交
9
BOOL SetChatRoomName(DWORD pid,wchar_t* chatroomid, wchar_t* name) {
L
ljc545w 已提交
10 11 12 13
    WeChatProcess hp(pid);
    if (!hp.m_init) return 1;
    DWORD SetChatRoomNameRemoteAddr = hp.GetProcAddr(SetChatRoomNameRemote);
    if (SetChatRoomNameRemoteAddr == 0)
L
ljc545w 已提交
14
        return 1;
L
ljc545w 已提交
15 16 17 18 19 20 21
    WeChatData<wchar_t*> r_chatroomid(hp.GetHandle(), chatroomid, TEXTLENGTH(chatroomid));
    WeChatData<wchar_t*> r_name(hp.GetHandle(), name, TEXTLENGTH(name));
    ChatRoomNameStruct params = { 0 };
    params.chatroomid = (DWORD)r_chatroomid.GetAddr();
    params.name = (DWORD)r_name.GetAddr();
    WeChatData<ChatRoomNameStruct*> r_params(hp.GetHandle(), &params, sizeof(params));
    if (r_chatroomid.GetAddr() == 0 || r_params.GetAddr() == 0)
L
ljc545w 已提交
22
        return 1;
L
ljc545w 已提交
23 24
    DWORD ret = CallRemoteFunction(hp.GetHandle(), SetChatRoomNameRemoteAddr, r_params.GetAddr());
    return ret == 0;
L
ljc545w 已提交
25
}