Refactoring
This commit is contained in:
parent
fa81ea3e24
commit
0b2e49ecba
@ -11,12 +11,6 @@ using namespace std;
|
||||
extern WxCalls_t g_WxCalls;
|
||||
extern DWORD g_WeChatWinDllAddr;
|
||||
|
||||
typedef struct MemberList {
|
||||
DWORD start;
|
||||
DWORD end1;
|
||||
DWORD end2;
|
||||
} MemberList_t;
|
||||
|
||||
int AddChatroomMember(string roomid, string wxids)
|
||||
{
|
||||
if (roomid.empty() || wxids.empty()) {
|
||||
@ -29,23 +23,23 @@ int AddChatroomMember(string roomid, string wxids)
|
||||
DWORD addRoomMemberCall2 = g_WeChatWinDllAddr + g_WxCalls.arm.call2;
|
||||
DWORD addRoomMemberCall3 = g_WeChatWinDllAddr + g_WxCalls.arm.call3;
|
||||
|
||||
TextStruct_t txtRoomid = { 0 };
|
||||
wstring wsRoomid = String2Wstring(roomid);
|
||||
txtRoomid.text = (wchar_t *)wsRoomid.c_str();
|
||||
txtRoomid.size = wsRoomid.size();
|
||||
txtRoomid.capacity = wsRoomid.capacity();
|
||||
WxString_t txtRoomid = { 0 };
|
||||
wstring wsRoomid = String2Wstring(roomid);
|
||||
txtRoomid.text = (wchar_t *)wsRoomid.c_str();
|
||||
txtRoomid.size = wsRoomid.size();
|
||||
txtRoomid.capacity = wsRoomid.capacity();
|
||||
|
||||
vector<wstring> vMembers;
|
||||
vector<TextStruct_t> vTxtMembers;
|
||||
vector<WxString_t> vTxtMembers;
|
||||
wstringstream wss(String2Wstring(wxids));
|
||||
while (wss.good()) {
|
||||
wstring wstr;
|
||||
getline(wss, wstr, L',');
|
||||
vMembers.push_back(wstr);
|
||||
TextStruct_t txtMember = { 0 };
|
||||
txtMember.text = (wchar_t *)vMembers.back().c_str();
|
||||
txtMember.size = vMembers.back().size();
|
||||
txtMember.capacity = vMembers.back().capacity();
|
||||
WxString_t txtMember = { 0 };
|
||||
txtMember.text = (wchar_t *)vMembers.back().c_str();
|
||||
txtMember.size = vMembers.back().size();
|
||||
txtMember.capacity = vMembers.back().capacity();
|
||||
vTxtMembers.push_back(txtMember);
|
||||
}
|
||||
|
||||
|
@ -10,19 +10,11 @@ extern HANDLE g_hEvent;
|
||||
extern WxCalls_t g_WxCalls;
|
||||
extern DWORD g_WeChatWinDllAddr;
|
||||
|
||||
typedef struct AtList {
|
||||
DWORD start;
|
||||
DWORD end1;
|
||||
DWORD end2;
|
||||
} AtList_t;
|
||||
|
||||
void SendTextMessage(string wxid, string msg, string atWxids)
|
||||
{
|
||||
char buffer[0x3B0] = { 0 };
|
||||
AtList_t atList = { 0 };
|
||||
TextStruct_t txtMsg = { 0 };
|
||||
TextStruct_t txtWxid = { 0 };
|
||||
TextStruct_t *tsArray = NULL;
|
||||
char buffer[0x3B0] = { 0 };
|
||||
WxString_t txtMsg = { 0 };
|
||||
WxString_t txtWxid = { 0 };
|
||||
|
||||
// 发送消息Call地址 = 微信基址 + 偏移
|
||||
DWORD sendCallAddress = g_WeChatWinDllAddr + g_WxCalls.sendTextMsg;
|
||||
@ -38,7 +30,7 @@ void SendTextMessage(string wxid, string msg, string atWxids)
|
||||
txtWxid.size = wsWxid.size();
|
||||
txtWxid.capacity = wsWxid.capacity();
|
||||
|
||||
vector<TextStruct_t> vTxtAtWxids;
|
||||
vector<WxString_t> vTxtAtWxids;
|
||||
if (!atWxids.empty()) {
|
||||
vector<wstring> vAtWxids;
|
||||
wstringstream wss(String2Wstring(atWxids));
|
||||
@ -46,10 +38,10 @@ void SendTextMessage(string wxid, string msg, string atWxids)
|
||||
wstring wstr;
|
||||
getline(wss, wstr, L',');
|
||||
vAtWxids.push_back(wstr);
|
||||
TextStruct_t txtAtWxid = { 0 };
|
||||
txtAtWxid.text = (wchar_t *)vAtWxids.back().c_str();
|
||||
txtAtWxid.size = vAtWxids.back().size();
|
||||
txtAtWxid.capacity = vAtWxids.back().capacity();
|
||||
WxString_t txtAtWxid = { 0 };
|
||||
txtAtWxid.text = (wchar_t *)vAtWxids.back().c_str();
|
||||
txtAtWxid.size = vAtWxids.back().size();
|
||||
txtAtWxid.capacity = vAtWxids.back().capacity();
|
||||
vTxtAtWxids.push_back(txtAtWxid);
|
||||
}
|
||||
}
|
||||
@ -73,11 +65,11 @@ void SendImageMessage(string wxid, string path)
|
||||
if (g_WeChatWinDllAddr == 0) {
|
||||
return;
|
||||
}
|
||||
DWORD tmpEAX = 0;
|
||||
char buf1[0x48] = { 0 };
|
||||
char buf2[0x3B0] = { 0 };
|
||||
TextStruct_t imgWxid = { 0 };
|
||||
TextStruct_t imgPath = { 0 };
|
||||
DWORD tmpEAX = 0;
|
||||
char buf1[0x48] = { 0 };
|
||||
char buf2[0x3B0] = { 0 };
|
||||
WxString_t imgWxid = { 0 };
|
||||
WxString_t imgPath = { 0 };
|
||||
|
||||
wstring wsWxid = String2Wstring(wxid);
|
||||
wstring wspath = String2Wstring(path);
|
||||
@ -121,11 +113,11 @@ void SendFileMessage(string wxid, string path)
|
||||
if (g_WeChatWinDllAddr == 0) {
|
||||
return;
|
||||
}
|
||||
DWORD tmpEAX = 0;
|
||||
char buffer[0x3B0] = { 0 };
|
||||
TextStruct_t fileWxid = { 0 };
|
||||
TextStruct_t filePath = { 0 };
|
||||
TextStruct_t nullbuffer = { 0 };
|
||||
DWORD tmpEAX = 0;
|
||||
char buffer[0x3B0] = { 0 };
|
||||
WxString_t fileWxid = { 0 };
|
||||
WxString_t filePath = { 0 };
|
||||
WxString_t nullbuffer = { 0 };
|
||||
|
||||
wstring wsWxid = String2Wstring(wxid);
|
||||
wstring wspath = String2Wstring(path);
|
||||
|
@ -72,9 +72,9 @@ typedef struct WxCalls {
|
||||
RoomMember_t arm; // 添加群成员
|
||||
} WxCalls_t;
|
||||
|
||||
typedef struct TextStruct {
|
||||
typedef struct WxString {
|
||||
wchar_t *text;
|
||||
DWORD size;
|
||||
DWORD capacity;
|
||||
char fill[8];
|
||||
} TextStruct_t;
|
||||
} WxString_t;
|
||||
|
Loading…
Reference in New Issue
Block a user