C++如何在r3静态调用NT函数
2015-11-23 11:34
260 查看
原文最早发表于百度空间2010-02-22。
1、把ntapi.h、ntdll.lib放在一个目录,然后设置工具——选项——项目和解决方案——VC++目录——包含文件,把刚刚的目录设置在改包 含文件中,然后设置库文件,把刚刚的目录设置在改包含文件中。
上面的设置是统一设置,方便以后新建项目都可以使用,如果要对单独的项目进行设置, 则按下面的步骤操作:
把ntapi.h、ntdll.lib放在一个目录,右键点击项目——属性——C/C++——常规——附加包含目录——把刚 刚的目录路径设置在这里;在链接器——常规——附加库目录设置刚刚的目录路径,在链接器——输入——附加依赖项设置ntdll.lib。
2、新建 头文件ABC.h,内容如下:
3、把abc.h放在和ntapi.h同一个目 录,这样就可以静态调用nt函数了,使用例子如下:
1、把ntapi.h、ntdll.lib放在一个目录,然后设置工具——选项——项目和解决方案——VC++目录——包含文件,把刚刚的目录设置在改包 含文件中,然后设置库文件,把刚刚的目录设置在改包含文件中。
上面的设置是统一设置,方便以后新建项目都可以使用,如果要对单独的项目进行设置, 则按下面的步骤操作:
把ntapi.h、ntdll.lib放在一个目录,右键点击项目——属性——C/C++——常规——附加包含目录——把刚 刚的目录路径设置在这里;在链接器——常规——附加库目录设置刚刚的目录路径,在链接器——输入——附加依赖项设置ntdll.lib。
2、新建 头文件ABC.h,内容如下:
#ifndef abc_h__ #define abc_h__ #ifndef cplusplus extern"C" #endif #include "ntapi.h" #pragma comment(lib, "ntdll.lib") #endif // abc_h__
3、把abc.h放在和ntapi.h同一个目 录,这样就可以静态调用nt函数了,使用例子如下:
#include "stdafx.h" #include "iostream" #include "windows.h" #include "abc.h" int _tmain(int argc, _TCHAR* argv[]) { int pid; std::cout<<"请输入pid:"; std::cin>>pid; HANDLE kk=OpenProcess(0x1F0FFF, false,pid); NTSTATUS nStatus = NtTerminateProcess(kk,0); std::cin>>pid; return 0; }
相关文章推荐
- C语言多继承时子类与基类指针关系,union与struct区别,volatile修饰符作用
- C++ enum用法
- C++ STL源码剖析
- C语言运算符优先级 详细列表
- C++ enum用法
- STL memory.cpp
- 热门游戏 2048 C++ 源代码分享
- c++学习(函数模板, 类模板)<1>
- (原)C++中测试代码执行时间
- C++ 命名空间解释
- CPP11中的atomic类以及memory_order
- c++学习(四)
- C++ libcurl 使用简单描述
- 27.c/c++程序员面试宝典-复制构造函数
- C++中的全局namespace
- C++标准库::拾遗
- C++的运算符重载
- 《C++ Primer 5th》读书笔记4---文本查询程序
- C++递归之汉诺塔
- glm 中 数据类型 与 原始数据(c++ 数组)之间的转换