rundll32 petya.dll, #1

该方法运行dll的第一个方法?

我们知道windows下dll是没办法独立运行的,但是微软提供了rundll32.exe用于运行dll。

先测试一下:运行“Rundll32.exe shell32.dll,RestartDialog”,会弹出重启对话框。同样这种方式可以打开windows系统其他功能。

下面看一下如何定义自己的dll让rundll32.exe运行。

微软给出的dll函数原型如下:

  void CALLBACKEntryPoint(HWND hwnd, HINSTANCE hinst, LPSTR lpszCmdLine, int nCmdShow);
   hwnd - window handle that should be used as the owner window forany windows your DLL createshinst - your DLL's instance handlelpszCmdLine - ASCIIZ command line your DLL should parsenCmdShow - describes how your DLL's windows should be displayed

自定义的测试dll如下:

extern "C" _declspec(dllexport) void __cdecl rundll32dllfun(HWND hwnd, HINSTANCE hinst, LPSTR lpszCmdLine,

int nCmdShow)
{
MessageBox(NULL,"TEST",lpszCmdLine,MB_OK);
return;
}

生成动态库rundll32dll.dll。

运行:

rundll32.exe "E:\demo\rudll32dll\Release\rudll32dll.dll",rundll32dllfun

弹出了熟悉的对话框,说明调用成功。

同时可以传入参数,运行:

rundll32.exe "E:\demo\rudll32dll\Release\rudll32dll.dll",rundll32dllfun  888

弹出了对话框,并且888显示了对话框上面,说明参数也可以传递了,其中参数在lpszCmdLine中获取。

运行命令说明:rundll32.exe "xxx.dll",dllfun parameter

这样我们就可以开发dll作为应用程序来运行了,在进程中只能看到rundll32.exe,需通过进程查看工具查看运行了哪个dll。

rundll32.exe在那里4位系统中的位置说明:

windows/system32/rundll32.exe对应调用64位dll

windows/SysWoW64/rundll32.exe对应调用32位dll

微软给出的参考文章如下:http://support2.microsoft.com/kb/164787

使用rundll32.exe运行dll函数相关推荐

  1. 讹传的Win7睡眠(待机)快捷方式“rundll32.exe powrprof.dll,SetSuspendState 0,1,0”

    1,SetSuspendState不是为rundll32设计的.无法仅用一行rundll32睡眠.可以先取消休眠选项--,那是另话. 2,想仅用一行rundll32休眠,如下即可,不必带参数. run ...

  2. Rundll32.exe 调用Dll

    rundll32.exe  dll 路径 , 函数名 参数 rundll32.exe  dll 路径 , #序号  参数 转载于:https://www.cnblogs.com/DeeLMind/p/ ...

  3. QT如何生成Release版本(得到exe运行DLL)

    1.点击左侧工具栏的"项目",在"构建设置"中,将"编辑构建设置"更改为"Release".特别要注意,"概要 ...

  4. python 打包exe 运行dll load failed_Python ImportError: DLL load failed: %1 不是有效的 Win32 应用程序。...

    运行Python代码出现: ImportError: DLL load failed: %1 不是有效的 Win32 应用程序. 解决方法:去下载与你所安装的Python版本对应的pywin32并安装 ...

  5. rundll32.exe文件详解

    一.Rundll32.exe和Rundll.exe的区别 所谓Rundll,我们可以把它猜成两部分,run(运行)和DLL(动态数据库),所以此程序的功能是运行那些不能作为程序那样单独运行的DLL文件 ...

  6. Rundll32.exe文件详解(显示我的电脑 取消自动登录)

    winexec(Pchar('StrCommand'),sw_Show);  其中"StrCommand"代表以下命令之一(使用Windows中的运行不要加引号):  " ...

  7. lzg_ad:rundll32.exe进程详述

    Rundll32.exe, 顾名思义,"执行32位的DLL文件".它的作用是执行DLL文件中的内部函数,这样在进程当中,只会有Rundll32.exe,而不会有DLL后门的进程,这 ...

  8. 使用rundll32.exe绕过应用程序白名单(多种方法)

    0x00 前言 本文演示了白名单AppLocker bypass的最常见和最熟悉的技术.我们知道,出于安全原因,系统管理员添加组策略来限制本地用户的应用程序执行.在上一篇文章中,我们讨论了" ...

  9. rundll32.exe的用途

    版权声明:CSDN是本Blog托管服务提供商.如本文牵涉版权问题,CSDN不承担相关责任,请版权拥有者直接与文章作者联系解决. 命令列:rundll32.exe user.exe,restartwin ...

  10. 可疑进程描述(二)----rundll32.exe进程详述

    Rundll32.exe, 顾名思义,"执行32位的DLL文件".它的作用是执行DLL文件中的内部函数,这样在进程当中,只会有Rundll32.exe,而不会有DLL后门的进程,这 ...

最新文章

  1. c#调用java开发的webservice_用C#.NET调用Java开发的WebService传递int,double问题
  2. 史上最全的CSS hack方式一览(转)
  3. jackson 问题定位
  4. C++又一坑:动态链接库中的全局变量
  5. C++ Data语意学
  6. android AtomicBoolean类的使用
  7. 程序员必知的8大排序(四)-------归并排序,基数排序(java实现)
  8. Windows Mobile logo测试介绍
  9. ubuntu的网络配置
  10. 基于 MaxCompute 的实时数据处理实践
  11. 不要在 foreach 循环里进行元素的 remove / add 操作
  12. 【金猿投融展】Techsun天正聚合——联接品牌与人
  13. SQL数据库学习之路(一)
  14. (转)yolov3运行及保存检测视频(包括摄像头)
  15. 【WebStorm学生认证】如何用学生邮箱进行JetBrains学生认证
  16. 2021 ICPC Jinan C Optimal Strategy
  17. 明星艺人宣传推广的有效方案有哪些呢?
  18. HTML5七夕情人节表白网页制作【樱花雨+爱心3D相册】HTML+CSS+JavaScript
  19. PGCrypto 加密组件使用
  20. 分享几个IP获取地理位置的API

热门文章

  1. 红米手机4X获得Root权限的流程
  2. 全网最详细的Python自动化测试
  3. 魔兽三界血歌鸿蒙武器怎么合成,魔兽RPG剑域N3剧情攻略 特殊副本武器合成指南[多图]...
  4. 2022A特种设备相关管理(电梯)特种作业证考试题库及在线模拟考试
  5. IE浏览器调用jquery需要注意的小问题
  6. 转载(吃货告诉你,PAAS、IAAS和SAAS之间的区别)
  7. python操作gif 图片拆分
  8. 排序算法——鸡尾酒排序
  9. 算法学习之投票算法以及对应leetcode题目
  10. 机械寿命预测,多步预测