三、直接篇 直接篇说白了就不用任何东西!怎么做?跟着我眼镜来撒! 《封神榜》知道把?(答:不知道!反答:去死!)它的保护是有的,官方都已经公布了 但是有些人说《封神榜》没NP,(注意:NP现在就是保护的代名词了!)别听那些人的! 首先,运行登陆器(更新的那个)进入游戏。关闭用登陆器进入的游戏马上运行Game.exe 呵呵,没NP了。FPE等东西可以乱来了。魔法叠加、免负重等等都可以实现! 还有一种就是DAT文件或者BIN文件直接修改为EXE。呵呵! -------------------------------------------------------------------------------------------------------------------------------------------------------- 四、编程篇(VB、VC、DELPHI等等!) 怎么办呢?呵呵,我不懂怎么编VC和DELPHI的。***我就喜欢VB怎么着? VB可以简单的实现虚拟nProtect的消息发送。具体的就不说了! 一句话虚拟nProtect消息(你不等于没说嘛!)-_-!呵呵这个嘛......! 代码就不写了,麻烦。就像用WPE这些发包一样的原理 3. 躲避了NP的扫描现在就可以模拟了! -------------------------------------------------------------------------------------------------------------------------------------------------------- 需要VBAPI函数: keybd_event←函数模拟了键盘行动 -------------------------------------------------------------------------------------------------------------------------------------------------------- 相关API声明: keybd_event ↓ PrivateDeclareSubkeybd_eventLib"user32"(ByValbVkAsByte,ByValScanAsByte,ByValdwFlagsAsLong,ByValdwExtraInfoAsLong) -------------------------------------------------------------------------------------------------------------------------------------------------------- 需要的控件:Timer(interval不为空) -------------------------------------------------------------------------------------------------------------------------------------------------------- 代码: PrivateDeclareSubkeybd_eventLib"user32"(ByValbVkAsByte,ByValdwExtraInfoAsLong) PrivateSubTimer1_Timer() Callkeybd_event(82,0)'模拟按下"R"键 EndSub -------------------------------------------------------------------------------------------------------------------------------------------------------- 其它模拟: 方法一: AppActivatesTitle SendKeys"5" 方法二: AppActivatesTitle SendKeysvbKey5 方法三: SendMessageHwnd,WM_KEYDOWN,vbKey5,0& SendMessageHwnd,WM_KEYUP,0& 方法四: AppActivatesTitle keybd_event53,0 keybd_event53,KEYEVENTF_KEYUP,0 方法五: PostMessagelHwnd,0& PostMessagelHwnd,0& 4. 添加快捷键 -------------------------------------------------------------------------------------------------------------------------------------------------------- 需要VBAPI函数: GetAsyncKeyState←判断函数调用时指定虚拟键的状态 -------------------------------------------------------------------------------------------------------------------------------------------------------- 相关API声明: GetAsyncKeyState ↓ PrivateDeclareFunctionGetAsyncKeyStateLib"user32"(ByValvkeyAsLong)AsInteger PrivateFunctionMyHotKey(vKeyCode)AsBoolean -------------------------------------------------------------------------------------------------------------------------------------------------------- 需要的控件:Timer(interval不为空) -------------------------------------------------------------------------------------------------------------------------------------------------------- 代码: PrivateDeclareFunctionGetAsyncKeyStateLib"user32"(ByValvkeyAsLong)AsInteger PrivateFunctionMyHotKey(vKeyCode)AsBoolean MyHotKey=(GetAsyncKeyState(vKeyCode)<0) EndFunction '然后在循环中或Timer的Timer事件中检测: PrivateSubTimer1_Timer() IfMyHotKey(vbKeyA)AndvbKeyControlThen'ctrl+A End'关闭 EndIf '其中vbkeyA是键盘″A″的常数,其他键可按F1查得。 EndSub -------------------------------------------------------------------------------------------------------------------------------------------------------- 其它方法: 比如按下"ctrl+A"就退出! '可以设置Form的KeyPreview属性为True,然后在Form_KeyDown事件中添加代码: PrivateSubForm_KeyDown(KeyCodeAsInteger,ShiftAsInteger) IfKeyCode=Asc("A")AndShift=vbCtrlMaskThenunloadme'如果ctrl+A键被按下就退出 EndSub 5. 前边谈了模拟键盘,下面说说模拟鼠标。 -------------------------------------------------------------------------------------------------------------------------------------------------------- 需要VBAPI函数: mouse_event←模拟一次鼠标事件 -------------------------------------------------------------------------------------------------------------------------------------------------------- 相关API声明: mouse_event ↓ PrivateDeclareSubmouse_eventLib"user32"(ByValdwFlagsAsLong,ByValdxAsLong,ByValdyAsLong,ByValcButtonsAsLong,ByValdwExtraInfoAsLong) -------------------------------------------------------------------------------------------------------------------------------------------------------- 定义变量: ConstMOUSEEVENTF_LEFTDOWN=&H2 ConstMOUSEEVENTF_LEFTUP=&H4 ConstMOUSEEVENTF_MIDDLEDOWN=&H20 ConstMOUSEEVENTF_MIDDLEUP=&H40 ConstMOUSEEVENTF_MOVE=&H1 ConstMOUSEEVENTF_ABSOLUTE=&H8000 ConstMOUSEEVENTF_RIGHTDOWN=&H8 ConstMOUSEEVENTF_RIGHTUP=&H10 -------------------------------------------------------------------------------------------------------------------------------------------------------- MOUSEEVENTF_LEFTDOWN'鼠标左键按下 MOUSEEVENTF_LEFTUP'鼠标松开 MOUSEEVENTF_RIGHTDOWN'鼠标右键按下 MOUSEEVENTF_RIGHTUP'鼠标右键松开 -------------------------------------------------------------------------------------------------------------------------------------------------------- 代码: PrivateDeclareSubmouse_eventLib"user32"(ByValdwFlagsAsLong,ByValdwExtraInfoAsLong) ConstMOUSEEVENTF_LEFTDOWN=&H2 ConstMOUSEEVENTF_LEFTUP=&H4 ConstMOUSEEVENTF_MIDDLEDOWN=&H20 ConstMOUSEEVENTF_MIDDLEUP=&H40 ConstMOUSEEVENTF_MOVE=&H1 ConstMOUSEEVENTF_ABSOLUTE=&H8000 ConstMOUSEEVENTF_RIGHTDOWN=&H8 ConstMOUSEEVENTF_RIGHTUP=&H10 '这里是鼠标左键按下和松开两个事件的组合即一次单击 mouse_eventMOUSEEVENTF_LEFTDOWNOrMOUSEEVENTF_LEFTUP,0 '模拟鼠标右键单击事件 mouse_eventMOUSEEVENTF_RIGHTDOWNOrMOUSEEVENTF_RIGHTUP,0 '两次连续的鼠标左键单击事件构成一次鼠标双击事件 mouse_eventMOUSEEVENTF_LEFTDOWNOrMOUSEEVENTF_LEFTUP,0 mouse_eventMOUSEEVENTF_LEFTDOWNOrMOUSEEVENTF_LEFTUP,0
原文链接:https://www.f2er.com/vb/258425.html