对于已经写好的.dll,没有头文件能调用里面的函数吗?

问题描述

最近在研究些逆向相关的东西,这是个unity3d的手游,其资源都有加密,现在发现的是,在assembly.dll里有相应的加密、解密函数,想要直接调用这些.dll文件里的解密函数去解密资源,要怎么做?

解决方案

解决方案二:
DLL也要区分托管和非托管的,即使知道了调用方法,但不知道参数的意义也是没有用的.
解决方案三:
可以用loadlibrary动态加载调用。
解决方案四:
引用2楼caozhy的回复:

可以用loadlibrary动态加载调用。

试过用loadlibrary加载但是用例程里的方法只能加载DLL,,获取函数名来调用时就不行,获取不到相应的函数名
解决方案五:
引用3楼pgw00k的回复:

Quote: 引用2楼caozhy的回复:
可以用loadlibrary动态加载调用。

试过用loadlibrary加载但是用例程里的方法只能加载DLL,,获取函数名来调用时就不行,获取不到相应的函数名

Depends可以看到dll中有什么函数,但是。。。。单纯调用dll中并不是什么问题,毕竟他有导出符号表。。。难点在于参数的意义,函数的调用流程
解决方案六:
[DllImport("xxxx.dll")]publicstaticextern返回类型函数名(类型a,类型b...);

时间: 2024-10-26 05:48:47

对于已经写好的.dll,没有头文件能调用里面的函数吗?的相关文章

【COCOS2DX通信(HTTP&SOCKET)相关编译到ANDROID细节总结】编译加入CURL关联LIB与头文件 && 解决PTHREAD的CANCEL函数NDK不支持,找不到SOCKADDR_IN、HTONS等问题;

本站文章均为 李华明Himi 原创,转载务必在明显处注明:  转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/android-game/881.html 本篇介绍在Cocos2dx中加入网络通信相关代码,然后编译到Android时出现的一些细节和需要注意的地方总结.不多废话了,直接进入正题:    1.  首先介绍在Cocos2dx中使用pthread编译时应注意: 由于NDK明确指明不支持 pthread_cancel() 函数,编译的错误提示如下

C++的头文件和实现文件分别写什么

在C++编程过程中,随着项目的越来越大,代码也会越来越多,并且难以管理和分析.于是,在C++中就要分出了头(.h)文件和实现(.cpp)文件,并且也有了Package的概念. 对于以C起步,C#作为"母语"的我刚开始跟着导师学习C++对这方面还是感到很模糊.虽然我可以以C的知识面对C++的语法规范,用C#的思想领悟C++中类的使用.但是C#中定义和实现是都在一个文件中(其实都是在类里面),而使用C的时候也只是编程的刚刚起步,所写的程序也只要一个文件就够了.因此对于C++的Package

vc++-VC里面为什么要用def文件导出函数,直接在要用的地方包含头文件不行吗?

问题描述 VC里面为什么要用def文件导出函数,直接在要用的地方包含头文件不行吗? 1C VC里面为什么要用def文件导出函数,直接在要用的地方包含头文件不行吗? 解决方案 def用来导出dll函数列表,这么写比较直观一些,当然也可以直接在函数上修饰,两者都是可以的. 解决方案二: 为什么不直接包含要使用函数所在的头文件,而一定要导出? 解决方案三: 不是所有的函数都需要导出 解决方案四: 头文件里面是否应该包含函数的实现

C/C++ 头文件作用

最近在工作当中遇到了一点小问题,关于C语言头文件的应用问题,主要还是关于全局变量的定义和声明问题.学习C语言已经有好几年了,工作使用也近半年了,但是对于这部分的东西的确还没有深入的思考过.概念上还是比较模糊的,只是之前的使用大多比较简单,并没有牵涉到太复杂的工程,所以定义和声明还是比较简单而明了了的.但是最近的大工程让我在这方面吃到了一点点苦头,虽然看了别人的代码能够很快的改正,但是这些改正背后的原因却不知道.我想大多数喜欢C语言的程序员应该是和我一样的,总喜欢去追究程序问题背后的底层原因,而这

头文件的编写-调用自己头文件问题c2228

问题描述 调用自己头文件问题c2228 我写了一个A.h头文件,里面包含节点LNode和线性链表LinkList的定义 #include<iostream.h> #ifndef A_H #define A_H template<class T> class LinkList; template<class T> class LNode { friend class LinkList<T>; public: LNode(); LNode(const T &am

C++中头文件和源文件详细介绍

C++中的头文件和源文件详解 一.C++编译模式 通常,在一个C++程序中,只包含两类文件--.cpp文件和.h文件.其中,.cpp文件被称作C++源文件,里面放的都是C++的源代码:而.h文件则被称作C++头文件,里面放的也是C++的源代码. C+ +语言支持"分别编译"(separate compilation).也就是说,一个程序所有的内容,可以分成不同的部分分别放在不同的.cpp文件里..cpp文件里的东西都是相对独立的,在编 译(compile)时不需要与其他文件互通,只需要

语言-static 函数定义在头文件中有什么作用

问题描述 static 函数定义在头文件中有什么作用 static 函数定义在头文件中有什么作用?学渣求教,static 不就是要限制作用域吗? 解决方案 是限定范围的,你的理解没有错.所以在 .h 中定义的 static 函数只能供本头文件中定义的函数使用 解决方案二: static表示静态类型.同时限定在模块内可见. 解决方案三: static用于声明静态变量,添加了该标识意味着这个变量的值在整个程序运行期间都存在的 解决方案四: static是静态变量.局部变量.其作用域是从定义点到ret

C++头文件编译问题

一.C++编译模式 通常,在一个C++程序中,只包含两类文件--.cpp文件和.h文件.其中,.cpp文件被称作C++源文件,里面放的都是C++的源代码:而.h文件则被称作C++头文件,里面放的也是C++的源代码. C+ +语言支持"分别编译"(separate compilation).也就是说,一个程序所有的内容,可以分成不同的部分分别放在不同的.cpp文件里..cpp文件里的东西都是相对独立的,在编 译(compile)时不需要与其他文件互通,只需要在编译成目标文件后再与其他的目

C++中的头文件和源文件

一.C++编译模式通常,在一个C++程序中,只包含两类文件--.cpp文件和.h文件.其中,.cpp文件被称作C++源文件,里面放的都是C++的源代码:而.h文件则被称作C++头文件,里面放的也是C++的源代码.C+ +语言支持"分别编译"(separate compilation).也就是说,一个程序所有的内容,可以分成不同的部分分别放在不同的.cpp文件里..cpp文件里的东西都是相对独立的,在编 译(compile)时不需要与其他文件互通,只需要在编译成目标文件后再与其他的目标文