微信逆向代碼現在已是滿天飛,我也是業餘愛好,寫了一個微信逆向與界面仿製的程序,先看一下界面。
這是信息欄,點最左邊”+“號按鈕可以多開:
這是好友欄,
這是功能欄中信息捕捉嗅探,處理一些信息確實挺方便實用
這就是我寫的一個HOOK微信的程序,能自動收款,自動回覆 嗅探羣內有用的信息等功能的一款軟件!當然也可以多開,同時HOOK!在Win10下運行,界面是QT製作的,表情在Win10中自動轉換了(Unicode編碼),有喜歡的朋友或技術探討的可以加個QQ聯繫:150311852.
微信的UI是duilib庫的,QT的庫簡單好用,但不足之處就是打包依賴庫太大了!
光一個Web庫達58M,確實就人感到無奈!
寫這個界面感覺最難處理的就是顯示信息的小框,四面圓角,左或右有一面還有一個尖頭,還要自適應寬度。
我的處理辦法是重新繪製一個圖片作爲文本背景,再根據窗口大小判斷是否要分割文本爲多少行,創建背景代碼如下:
QPixmap pix(w,h);//定義一個圖片
pix.fill(Qt::transparent);//透明填充
setFixedSize(w,h);
m_imageBg->setFixedSize(w,h);
QPainter painter;
painter.begin(&pix);
painter.setRenderHints(QPainter::Antialiasing | QPainter::SmoothPixmapTransform);//消鋸齒
QColor bg(255, 255, 255);//背景白色
QColor line(200,200,200,100);//邊框灰色,透明度爲100
if(!m_isSelf)//處理不是自己發的消息
{
m_txtContent->setStyleSheet("border:0px solid #efefef;background:white;font-size:14px;");//文本樣式
m_txtContent->move(15,5);
m_txtContent->resize(width()-20,height()-10);
painter.setBrush(QBrush(bg));
painter.setPen(line);
painter.drawRoundedRect(7,0,width()-8,height()-1,4,4);//繪製一個圓角矩形
//三角三個點座標,注意:三角形的右位置要能蓋住矩形框的左邊線!!!
QPointF points[3] = {
QPointF(0, 15),
QPointF(8,10),//右邊的爲8,矩形的爲7,剛好蓋住邊線
QPointF(8,20),
};
QPen pen;
pen.setColor(bg);
painter.setPen(pen);
painter.drawPolygon(points, 3);
//畫三角加邊夾角線,只有2根
QPen penSanJiaoBian;
painter.setPen(line);
painter.drawLine( QPointF(0, 15), QPointF(8,10));
painter.drawLine(QPointF(0, 15),QPointF(8,20));
//內容
}
else//自己的消息
{
m_txtContent->setStyleSheet("border:0px solid #efefef;background:rgb(158,234,106);font-size:14px;");
m_txtContent->move(5,5);
m_txtContent->resize(width()-20,height()-10);
bg=QColor(158,234,106);
painter.setBrush(QBrush(bg));
painter.setPen(line);
painter.drawRoundedRect(0,0,width()-7,height()-1,4,4);
//三角
QPointF points[3] = {
QPointF(width(), 15),
QPointF(width()-8,10),
QPointF(width()-8,20),
};
QPen pen;
pen.setColor(bg);
painter.setPen(pen);
painter.drawPolygon(points, 3);
//三角加邊
QPen penSanJiaoBian;
painter.setPen(line);
painter.drawLine( QPointF(width()-0, 15), QPointF(width()-8,10));
painter.drawLine(QPointF(width()-0, 15),QPointF(width()-8,20));
}
painter.end();
本軟件對轉賬收款也分析的非常詳細,能準確知道金額,也可以語音播報:
本軟件還有一功能沒有開發: 發送動畫表情 顯示圖片等!