10/10号更新

DLL注入器注入DLL卡死 问题

新增打开控制台 将阳光输出到控制台中

注入DLL代码

 1 #include <stdio.h>
2 #include<Windows.h>
3
4 char 文件路径[] = "C:\\Users\\cxyck\\Desktop\\植物大战僵尸\\1.dll";
5
6
7 HANDLE mu()
8 {
9 HWND 窗口句柄 = 0;
10 DWORD pid = 0;
11 HANDLE 进程句柄 = 0;
12 char mu[] = "植物大战僵尸中文版";
13 窗口句柄 = FindWindowA(NULL, mu);
14 GetWindowThreadProcessId(窗口句柄, &pid);
15 进程句柄 = OpenProcess(PROCESS_ALL_ACCESS, 0, pid);
16
17 return 进程句柄;
18
19 }
20
21 int main()
22 {
23 HANDLE 进程句柄;
24 进程句柄 = mu();
25
26 void* nj = 0;
27 printf("%p\n", 进程句柄);
28 nj = VirtualAllocEx(进程句柄, NULL, 4 * 1024, MEM_COMMIT, PAGE_READWRITE);
29
30 printf("%p\n", nj);
31 WriteProcessMemory(进程句柄, nj, 文件路径, 0x555, 0);
32 CreateRemoteThread(进程句柄, 0, 0, (LPTHREAD_START_ROUTINE)LoadLibraryA, nj, 0, 0);
33 printf("%p", nj);
34 getchar();
35 return 0;
36 }

DLL内代码

// CPAGE00 消息处理程序
DWORD R4(UINT_PTR 地址)
{
__try
{
return *(DWORD*)地址;//ReadProcessMemory
}
__except (1)
{
return 0;
}
} void CPAGE00::OnBnClickedButton1()
{
HWND 游戏窗口句柄 = FindWindowA("MainWindow", "植物大战僵尸中文版");
DWORD 阳光 = R4(R4(R4(0x006A9EC0) + 0x768) + 0x5560);
printf("%d",阳光)
}

void CPAGE00::OnBnClickedButton2()
{
    // 控制台打开
    BOOL br=AllocConsole();
    ///重定向 防止控制台被卡
    FILE* pfile = NULL;
    //重定向到标准输出 防止被游戏卡输出导致没有输出
    errno_t iret = freopen_s(&pfile, "CONOUT$", "w", stdout); //printf输出重定向到控制
    
}

DLL中代码 显示出MFC窗口

这里修复了 用DLL注入卡线程 导致DLL卡死的问题

#include"CPAGE00.h"
DWORD WINAPI 窗口初始化(LPVOID arg) {
AFX_MANAGE_STATE(AfxGetStaticModuleState()); CPAGE00 abc;//abc实例化对象 int abc;
abc.DoModal();//DoModal 以模态的方式显示窗口
return 1;
}
BOOL CA026MFCDLLApp::InitInstance()
{
/// <summary> ::CreateThread(0,0,窗口初始化,0,0,0); return TRUE;
}

郁金香 注入DLL代码 与MFC窗口DLL文件 开源的更多相关文章

  1. VS2017编译错误:#error: Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version

    VS2017编译错误:#error: Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll ve ...

  2. #error: Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version. Please #define _AFXDLL or do not use /MD[d]

    转载:https://www.cnblogs.com/cvwyh/p/10570920.html 错误 在使用VS编译文件时出现了如下错误: #error: Building MFC applicat ...

  3. error C1189: #error : Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version. Please #define _AFXDLL or do not use /MD[d]

    今天在开发过程中遇到了C1189 error.找了好久解决办法,最后自己解决了...... 方法:工程右键->属性 编辑预处理器定义: 再次运行,就解决了.

  4. Building MFC application with /MD[d] (CRT dll version)requires MFC shared dll version

    解决方法:

  5. fatal error C1189: #error : Building MFC application with /MD[d] (CRT dll version) requires MFC sha

    调试程序时出现以下问题:d:\program files (x86)\microsoft visual studio 10.0\vc\atlmfc\include\afx.h(24): fatal e ...

  6. c++MFC工程修改在共享DLL中使用MFC为使用标准Windows库的解决办法

    由于创建MFC工程时,默认是在共享DLL中使用MFC,如果将此选项改成使用标准Windows库,会报如下错误 c:\program files\microsoft visual studio 9.0\ ...

  7. dll注入与代码注入

    学习<逆向工程核心原理>,在x64下dll注入与代码注入. dll注入主要用到CreateRemoteThread, HANDLE WINAPI CreateRemoteThread( _ ...

  8. 将MFC Grid control封装为DLL的做法及其在DLL中的使用方法

    MFCGrid control是一款非常优秀的网格控件,支持非常丰富的界面元素,如下图: 因而在数据库程序及报表程序应用较为广泛,其源码可以在下面下载到: MFC Grid control2.27源码 ...

  9. 在共享DLL中使用MFC

    使用VS2008,在项目属性中有一项MFC的使用,有三种设置: 1.使用标准Windows库 2.在共享DLL中使用MFC 3.在静态库中使用MFC          第一种顾名思义.        ...

  10. 四种DLL:NON-MFC DLL, Regular DLL Statically/Dynamically Linked to MFC, MFC Extension DLL

    参考资料: https://msdn.microsoft.com/en-us/library/30c674tx.aspx http://www.cnblogs.com/qrlozte/p/484442 ...

随机推荐

  1. 腾讯会议如何在Linux下的安装与使用

    腾讯会议官网https://meeting.tencent.com/download?mfrom=OfficialIndex_TopBanner1_Download下载 腾讯会议官网只提供了deb版的 ...

  2. adb shell 全局查找文件

    借助busybox 由于安卓手机没有 find 命令,所以我们需要借助busybox中的find命令 busybox 下载地址 这里我下载的是 busybox-armv6l, 一般这个版本就可以,下载 ...

  3. java 常用的jar包下载地址

    Eclipse: http://www.eclipse.org/downloads/packages/all Spring: http://Framework: http://repo.spring. ...

  4. JavaScript合集(流程控制语句)

    流程控制 条件判断语句 条件分支语句 循环语句 条件判断语句 if语句 语法: if(条件表达式){ 语句 } ------- if(a > 10){ alert('a比10大') } if-e ...

  5. 【Shell脚本案例】案例3:批量创建100个用户并设置密码

    一.背景 新入职员工创建用户 二.常规操作 useradd zhangsan ls /home/ password zhangsan 三.考虑问题 1.实现自动输入密码,将其存到文件中 passwor ...

  6. instanceof和Class.isAssignableFrom的区别

    1. Class.isAssignableFrom 偶然看见同事写的一段代码是这样的 if( AfterRender.class.isAssignableFrom( assembly.getClass ...

  7. ArcObjects SDK开发 013 MapFrame

    1.如何获取MapFrame 打开一个Mxd文件,可能包含一个或多个Map,每个Map都会放到一个MapFrame中,加载到PageLayout上.我们可以通过PageLayout继承的IGraphi ...

  8. Flutter和Rust如何优雅的交互

    前言 文章的图片链接都是在github上,可能需要...你懂得:本文含有大量关键步骤配置图片,强烈建议在合适环境下阅读 Flutter直接调用C层还是蛮有魅力,想想你练习C++,然后直接能用flutt ...

  9. OpenJudge 1.8.11 图像旋转

    11:图像旋转 总时间限制: 1000ms 内存限制: 65536kB 描述 输入一个n行m列的黑白图像,将它顺时针旋转90度后输出. 输入 第一行包含两个整数n和m,表示图像包含像素点的行数和列数. ...

  10. Jmeter 之bzm- Concurrency Thread Group 压测

    bzm- Concurrency Thread Group  并发线程组代替 jp@gc - Stepping Thread Group线程组. 1.  下载jmeter-plugins-manage ...