欢迎来到 嗅灵易学

零基础也能上手的脚本技术课,一对一答疑带你入门

关于NT NATIVE APP

关于NT NATIVE APP

昨天无意中看到了有人翻出microDebug去年写的关于Natvie App的贴子,该帖子引用了Mark Russinovich的文章及代码,后来在网上搜了一下,讲NATIVE APP的基本都引是Mark Russinovich的代码,我相信microDebug一定有更好的东西,只是不便写出来,我就来补充一下,其它请参考虑microDebug原贴:http://bbs.pediy.com/showthread.php?t=117694。
Mark Russinovich的这个代码已经是老掉牙了,它已不适用于XP以后的系统了,这样说有两个原因:
1.NtProcessStartup的原型已发生变化,目前的原型为:
    void NtProcessStartup(struct _PEB* Peb);
2.XP/VISTA/WIN7的DDK中还是为NATIVE APP提供了点支持的,DDK中,有一个名为NT.LIB的库文件,此库提供NATIVE APP的最基本的启动代码,然后调用main函数,main函数的原型如下:
int main(int argc, char* argv[], char* envp[], unsigned long DebugParam);
基于此库,最简单的native程序为:
int main()
{
  return 0;
}
从VISTA开始,main函数也有unicode版本,即:
int wmain(int argc, wchar* argv[], wchar_t* envp[], unsigned long DebugParam);
如果要使用unicode版本,则程序入口要指定为:NtProcessStartupW。

注意:上传附件及图片大小不得大于30M。

⚠️ 版权声明:
本博客所有内容(含教程、源码、工具)仅供个人技术学习与研究交流使用,严禁商用、倒卖、二次分发及非法用途。
未经作者书面授权,任何组织或个人不得转载、复制或用于其他平台,违者将追究相关责任。

0 0 0 举报
复制成功