精华内容
下载资源
问答
  • DLL函数查看工具

    2018-09-09 18:17:38
    DLL内部函数符号观察 工具
  • DLL函数查看器.rar

    2020-04-04 14:22:37
    DLL函数查看器.rar
  • dll 函数查看工具 接口查看工具 dll 函数查看工具 接口查看工具 dll 函数查看工具 接口查看工具
  • 主要介绍了详解VS2019 dumpbin查看DLL的导出函数,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • 本实例使用的VS2010自带的dumpbin查看 打开命令行工具 在开始,所有程序中找到VS2010,然后点击“Visual Studio Tools”,右键点击Visual Studio 2010 命令提示即可打开命令行工具 如下图 2.使用dumpbin工具 示例...

    本实例使用的VS2010自带的dumpbin查看

    1. 打开命令行工具

    在开始,所有程序中找到VS2010,然后点击“Visual Studio Tools”,右键点击Visual Studio 2010 命令提示即可打开命令行工具

    如下图
    在这里插入图片描述
    2.使用dumpbin工具
    示例:
    dumpbin -exports ***.dll 可将对应的dll文件直接拖入命令行, 自动显示dll的完整路径
    输入命令后,点击Enter键,即可显示dll中包含的函数

    3.有时候引用的非托管dll中不显示函数名,如下图
    在这里插入图片描述
    这个时候可通过序号来引用对应的函数。

    在这里插入图片描述
    若查看显示函数名,才可以通过函数名来引用。不知道C++在什么情况下创建的dll,查看后不显示函数名。

    在这里插入图片描述
    在这里插入图片描述
    如果在外部定义的函数名称与DLL中的入口名称一致,就可以不用显式的指定EntryPoint字段,否则就应该使用如下的形式:
    [DllImport(“dllname”, EntryPoint=“Functionname”)]
    [DllImport(“dllname”, EntryPoint="#123")]

    参考
    C#调用非托管DLL函数

    展开全文
  • DLL函数查看器(3.4)

    2012-08-01 00:27:08
    用于查看Dll文件内封装的函数及其参数,提供了对易语言IDE和VB的支持功能很强大。
  • 查看dll函数接口的参数的方法

    万次阅读 2019-06-17 02:21:06
    查看dll函数接口的方法,都有统一的方法,就是使用dependen工具,但是,这个工具看不了函数的参数,那么,这时候有什么方法,方法有二:一个使用逆向的方法,如使用IDA,二是利用vs的提示功能,详情待下回分解,可先...

    查看dll函数接口的方法,都有统一的方法,就是使用dependen工具,但是,这个工具看不了函数的参数,那么,这时候有什么方法,方法有二:一个使用逆向的方法,如使用IDA,二是利用vs的提示功能,详情待下回分解,可先看以下链接 https://blog.csdn.net/chinabinlang/article/details/7698459

    展开全文
  • DLL函数查看

    2018-05-16 20:46:38
    通过这个控件可以查看dll函数接口,分析控件结构,极大的助力了windows控件的开发,控件开发必备。
  • DLL查看器,dll文件导出函数查看,便于查看DLL文件中的函数
  • DLL接口函数查看工具

    2019-03-12 16:08:17
    DLL接口函数查看工具 可以查看dll动态链接库里面提供的方法,方便c++开发,程序员必备工具
  • DLL函数查看

    2018-08-02 03:12:22
    dll函数查看器,可以查看易语言,c++,vb,c#等dll函数命令
  • 如何查看Dll中包含了哪些函数

    千次阅读 2020-04-05 13:20:49
    如何查看Dlll包含了哪些函数,有两种方法: 1. 用工具depends来查看 该工具可从http://www.dependencywalker.com/下载,打开该软件,再通过该软件打开需要查看Dll,比如打开C运行时库,C:\Windows\System32\...

    如何查看Dlll包含了哪些函数,有两种方法:

    1. 用工具depends来查看

    该工具可从http://www.dependencywalker.com/下载,打开该软件,再通过该软件打开需要查看的Dll, 比如打开C运行时库,C:\Windows\System32\msvcrt.dll,呈现如下:

    在窗中右侧中部,看到了我们熟悉的C语言标准库函数fopen.

    2.利用dumpbin来查看

    dumpbin位于VC的安装路径下,比如C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin。
    点击: 开始菜单->运行,输入CMD, 进入命令行运行窗口,输入 CD C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin, 将目录切换到dumpbin所在目录,再输入dumpbin /exports C:\Windows\System32\msvcrt.dll命令即可查看Dll中的函数。

    查看的结果如下:

    也可以在命令中加入 > 将结果输出到一个文件中,如下,则最后的结果将输出到D盘的msvcrt.txt文件中。

    展开全文
  • 查看DLL中导出的函数及参数

    万次阅读 2012-10-12 12:33:29
    http://wwblog.yo2.cn/articles/%e6%9f%a5%e7%9c%8bdll%e4%b8%ad%e5%af%bc%e5%87%ba%e7%9a%84%e5%87%bd%e6%95%b0%e5%8f%8a%e5%8f%82%e6%95%b0.html ...可以通过反汇编来知道接口函数参数,建议使用

    http://wwblog.yo2.cn/articles/%e6%9f%a5%e7%9c%8bdll%e4%b8%ad%e5%af%bc%e5%87%ba%e7%9a%84%e5%87%bd%e6%95%b0%e5%8f%8a%e5%8f%82%e6%95%b0.html

    我这收藏有一个CSDN上的贴子,是jyu1221(天同)写的,我觉得不错。
    可以通过反汇编来知道接口函数的参数,建议使用W32DSM来分析,也可以直接使用VC来分析,就是麻烦一点。
    现在使用W32DSM来具体说明:
    1。先打开需要分析的DLL,然后通过菜单功能-》出口来找到需要分析的函数,双击就可以了。
    它可以直接定位到该函数。
    2。看准该函数的入口,一般函数是以以下代码作为入口点的。
    push ebp
    mov ebp, esp
    ...
    3。然后往下找到该函数的出口,一般函数出口有以下语句。
    ...
    ret xxxx;//其中xxxx就是函数差数的所有的字节数,为4的倍数,xxxx除以4得到的结果
    就是参数的个数。
    其中参数存放的地方:
    ebp+08 //第一个参数
    ebp+0C //第二个参数
    ebp+10 //第三个参数
    ebp+14 //第四个参数
    ebp+18 //第五个参数
    ebp+1C //第六个参数
    。。。。
    -------------------------------------------
    还有一种经常看到的调用方式:
    sub esp,xxxx //开头部分
    //函数的内容
    。。。
    //函数的内容
    add esp,xxxx
    ret //结尾部分
    其中xxxx/4的结果也是参数的个数。
    -------------------------------------------------
    还有一种调用方式:
    有于该函数比较简单,没有参数的压栈过程,
    里面的
    esp+04就是第一个参数
    esp+08就是第二个参数
    。。。
    esp+xx就是第xx/4个参数
    你说看到的xx的最大数除以4后的结果,就是该函数所传递的参数的个数。
    ----------------------------------------------
    到现在位置,你应该能很清楚的看到了传递的参数的个数。至于传递的是些什么内容,还需要进一步的分析。
    最方便的办法就是先找到是什么软件在调用此函数,然后通过调试的技术,找到该函数被调用的地方。一般都是PUSH指令
    来实现参数的传递的。这时可以看一下具体是什么东西被压入堆栈了,一般来说,如果参数是整数,一看就可以知道了,
    如果是字符串的话也是比较简单的,只要到那个地址上面去看一下就可以了。
    如果传递的结构的话,没有很方便的办法解决,就是读懂该汇编就可以了。对于以上的分析,本人只其到了抛砖引玉,
    希望对大家有点用处。
    昨天已经简单的告诉大家,怎么知道接口的参数个数了,以及简单的接口。由于编译器的优化原因,
    可能有的参数没有我前面说的那么简单,今天就让我再来分析一下的DLL的调用的接口。如果在该DLL的
    某个函数中,有关于API调用的话,并且调用API的参数整好有一个或多个是该DLL函数的参数的话。
    那么就可以很容易的知道该DLL函数的参数了。
    举例说明:以下汇编代码通过W32DSM得到。
    Exported fn(): myTestFunction - Ord:0001h
    :10001010 8B442410 mov eax, dword ptr [esp+10]
    :10001014 56 push esi
    :10001015 8B74240C mov esi, dword ptr [esp+0C]
    :10001019 0FAF742410 imul esi, dword ptr [esp+10]
    :1000101E 85C0 test eax, eax
    :10001020 7414 je 10001036
    :10001022 8B442418 mov eax, dword ptr [esp+18]
    :10001026 8B4C2408 mov ecx, dword ptr [esp+08]
    :1000102A 6A63 push 00000000
    :1000102C 50 push eax
    :1000102D 51 push ecx
    :1000102E 6A00 push 00000000

    * Reference To: USER32.MessageBoxA, Ord:01BEh
    |
    :10001030 FF15B0400010 Call dword ptr [100040B0]

    * Referenced by a (U)nconditional or (C)onditional Jump at Address:
    |:10001020(C)
    |
    :10001036 8BC6 mov eax, esi
    :10001038 5E pop esi
    :10001039 C3 ret
    -------------------------------------------------------
    其中myTestFunction是需要分析的函数,它的里面调用了USER32.MessageBoxA
    这个函数计算参数个数的时候要注意了,它不是0X18/4的结果,原因是程序入口
    的第二条语句又PUSH了一下,PUSH之前的ESP+10就是第4个参数,就是0x10/4 =4
    PUSH之后的语句ESP+ XX,
    其中(XX-4)/4才对应于第几个参数。
    ESP+0C ==第2个参数
    ESP+10 ==第3个参数
    ESP+18 ==第5个参数
    ESP+08 ==第1个参数
    ----------------------------这样共计算出参数的个数是5个,注意PUSH esi之前与PUSH esi之后,
    PUSH一下,ESP的值就减了4,特别需要注意的地方!!!然后看函数的返回处RET指令,
    由于看到了RET之前给EAX赋了值,所以可以知道该函数就必定返回了一个值,大家都知道EAX的寄存器
    是4个字节的,我们就把它用long来代替好了,现在函数的基本接口已经可以出来了,
    long myTestFunction(long p1,long p2,long p3,long p4,long p5);
    但是具体的参数类型还需调整,如果该函数里面没有用到任何一个参数的话。那么参数
    多少于参数的类型就无所谓了。一般来说这是不太会遇到的。那么,我们怎么去得到该函数的
    参数呢?请看下面分析:
    你有没有看到* Reference To: USER32.MessageBoxA, Ord:01BEh这一条语句,
    这说明了,在它的内部使用了WINAPI::MessageBox函数,我们先看一下它的定义:
    int MessageBox(
    HWND hWnd, // handle of owner window
    LPCTSTR lpText, // address of text in message box
    LPCTSTR lpCaption, // address of title of message box
    UINT uType // style of message box
    );
    它有4个参数。一般我们知道调用API函数的参数是从右往左压入堆栈的,把它的调用过程
    翻译为伪ASM就是:
    PUSH uType
    PUSH lpCaption
    PUSH lpText
    PUSH hWnd
    CALL MessageBox
    ---------------------------------------
    我们把这个于上面的语句对应一下,就可以清楚的知道
    hWnd = NULL(0)
    lpText = ecx
    lpCaption = eax
    uType = MB_OK(0)
    ---------------------------------
    在往上面看,
    原来 EAX 中的值是ESP+18中的内容得到了
    ECX 中的值是ESP+08中的内容得到了

    那么到现在为止就可以知道
    lpText = ECX = [ESP+08] ==第1个参数
    lpCaption = EAX = [ESP+18] ==第5个参数

    现在我们可以把该DLL函数接口进一步写成:
    long myTestFunction(LPCTSTR lpText,long p2,long p3,long p4,LPCTSTR lpCaption);

    至于第3个参数ESP+10,然后找到该参数使用的地方,imul esi, dword ptr [esp+10]有这么一条指令。
    因为imul是乘法指令,我们可以肯定是把ESP+10假设位long是不会错的,同理可以知道第2个参数esp+0C
    肯定用long也不会错了,至于第4个参数,它只起到了一个测试的作用,
    mov eax, dword ptr [esp+10]
    test eax, eax
    je 10001036
    看到这个参数的用法了吗?
    把它翻译位C语言就是:
    if(p3)
    {
    //做je 10001036下面的那些指令
    }
    return ;
    到现在为止可以把第3个参数看成是个指针了吧!就是如果p3为空就直接返回,如果不空就做其它一下事情。

    好了,到现在位置可以把正确的接口给列出来了:
    long myTestFunction(LPCTSTR lpText,long n1,char *pIsNull,long n2,LPCTSTR lpCaption);
    哈哈,现在成功了!!!
    long CryptExtOpenCER(long p1,long p2,LPCSTR p3,long p4);
    其中第3个参数可能是文件名称,
    或者是PCERT_BLOB
    它有CERT_QUERY_OBJECT_FILE,或者是CERT_QUERY_OBJECT_BLOB来决定。
    ---------------------------------------------------------------
    今天想到了一个很好的办法,来解决参数的问题,不过有一定难度。
    1。根据以前讲的各种方法,可以很快速的知道参数的个数,假设该函数
    名称为MyTestFunc,参数的个数为3个。
    于是可以定义如下:
    long MyTestFunc(long p1,long p2,long p3);
    2。安装一个HOOK(DLL)
    3。通过别的程序调用,触发HOOK,调试到HOOK里面,就可以很清楚的知道
    调用的参数,数值。
    -------------
    此方法本人还没有去实现,相信肯定是可以的。这样得到的参数应该相当准确。

     

    展开全文
  • 查看DLL中的函数

    万次阅读 2019-05-10 22:14:19
    在使用Visual Studio时,可以用自带工具dumpbin.exe(一般在 \vs安装目录\VC\bin 下)来得到某个DLL中所输出的符号的清单。如下面的命令:dumpbin -exports myTest.dll 这里推荐一个特别好用的工具:Dependency ...
  • VS2019 dumpbin查看DLL的导出函数

    千次阅读 2019-06-25 23:21:02
    之前有人问过ViewDLL这些软件在哪下载。...3.使用 /Exports 参数查看DLL的导出函数符号 顺便再讲下关于调用约定和函数符号的关系,即_stdcall,_cdecl.还有就是extern "c"对函数名符号的影响...
  • Dependency Walker查看PE依赖、查看DLL函数........................................................................... Dependency Walker V2.2.6000.0 绿色版(DLL依赖性分析工具)...
  • 引用改网友的 https://download.csdn.net/download/jackeywjf/1521390 看懂后对其改进和中文注释,C#动态调用DLL并对目标函数传递参数
  • DLL函数查看器,查看C语言写的DLL文件入口函数
  • dll函数查看

    2017-12-11 14:22:13
    可以查看dll,ocx,exe中的函数名称以及地址、参数信息,直接拖入就行
  • windows查看dll库接口函数

    千次阅读 2019-05-24 11:08:56
    一种是使用工具depends,另一种是使用vs的cmd命令窗口,dumpbin /EXPORTS xxx.dll就可以查看xxx.dll函数接口了
  • 例如,我想查看dll文件名为dll-1.dll,存放地址为:E:\1-C++\dll-1\x64\Debug。 Step#1: 进入VS 2017的开发人员命令提示符 Step#2: 输入dll-1.dll所在盘符,这样做的目的是切换到E盘。比如我的dll文件存放在这...
  • windows DLL动态库函数查看软件,可以查看函数名和参数
  • dll函数查看器3.7版本

    2018-01-13 00:58:36
    轻松查看DLL文件的参数函数申明以及所依赖的入口函数
  • 可以通过反汇编来知道接口函数参数,建议使用W32DSM来分析,也可以直接使用VC来分析,就是麻烦一点。 现在使用W32DSM来具体说明: 1。先打开需要分析的DLL,然后通过菜单功能-》出口来找到需要分析的函数,双击...
  • C#调用C++DLL,C++DLL中的函数参数包含指针。 绝对可用。
  • 1. 打开命令行工具 ...dumpbin -exports C:\WINDOWS\system32\apphelp.dll 注意: C:\WRMP_BthTransLayer_Win32.lib这个可以不用输入,只要将文件拖到命令行就行。
  • c# 调用C++编写 的DLL函数各种参数传递问题。数据处理问题等等。
  • DLL函数查看器V3.5

    热门讨论 2013-07-24 10:10:37
    * 新增对已知函数参数查看及中文解释 * 新增对函数的易语言和VB的函数结构声明 * 新增查壳功能 * 新增查看PE文件头信息 * 美化窗口界面等 感谢使用山寨版DLL函数查看器,遇到问题请发送邮件 infopet@qq.com 因为...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 157,849
精华内容 63,139
关键字:

查看dll函数及参数