如何在utils.js 是什么中将需要的函数进行导出

查看: 1176|回复: 4
关于keil中将函数封装成LIB库
主题帖子精华
中级会员, 积分 200, 距离下一级还需 300 积分
在线时间13 小时
我现在想试验将USBCDC类有关的函数封装成LIB,直接将有关的.c文件封装成lib试验没问题,现在有个问题,就是在主文件中每次要包含以下几个.h文件
#include "usbd_cdc_core.h"
#include "usbd_usr.h"
#include "usb_conf.h"
#include "usbd_desc.h"
#include "usbd_core.h"
也就是说要在选项中添加相应的.h文件,但是这些.h文件分别处在不同的文件夹中,这样每次添加起来就很麻烦,当然把这些.h文件分别拷出来放在一个文件夹下当然可以,我想有没有方法只要在主文件中添加一个h文件就完成添加,怎么做?谢谢!
没有这样的方法。
主题帖子精华
在线时间0 小时
没有这样的方法。
于停用该账号:http://www.microstar.club
主题帖子精华
中级会员, 积分 334, 距离下一级还需 166 积分
在线时间12 小时
a.h中添加
#include&"usbd_cdc_core.h"
&#include&"usbd_usr.h"
&#include&"usb_conf.h"
&#include&"usbd_desc.h"
&#include&"usbd_core.h"
主文件中添加&a.h可以吧
打倒A莫,打倒小日本
主题帖子精华
中级会员, 积分 200, 距离下一级还需 300 积分
在线时间13 小时
回复【2楼】逆行者:
---------------------------------
有没有其他的方法,感觉这方法比较麻烦,其中的某个.h文件还包含其他的.h文件,这样显得结构比较乱
主题帖子精华
中级会员, 积分 200, 距离下一级还需 300 积分
在线时间13 小时
好吧,那还是逐个包含吧,谢谢!
Powered byDLL中导出函数的声明有两种方式1_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
DLL中导出函数的声明有两种方式1
上传于||文档简介
&&D​L​L​中​导​出​函​数​的​声​明​有​两​种​方​式​1
阅读已结束,如果下载本文需要使用1下载券
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩3页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢【原创】告别硬编码-发个获取未导出函数地址的Dll及源码 - 看雪安全论坛
该主题: "【原创】告别硬编码-发个获取未导出函数地址的Dll及源码" 因在一定的时间里没有任何回复而自动关闭。如果您还对该主题感兴趣或者想参与对此主题的讨论,请您重新发表一篇相关的新主题。
本站声明:看雪论坛文章版权属于作者,受法律保护。没有作者书面许可不得转载。若作者同意转载,必须以超链接形式标明文章原始出处和作者信息及本声明!
注册日期: Jan 2009
现金: 417 Kx
获感谢文章数:9获会员感谢数:45
【原创】告别硬编码-发个获取未导出函数地址的Dll及源码
标 题: 【原创】告别硬编码-发个获取未导出函数地址的Dll及源码 作 者: organic
时 间: ,15:45:03 链 接: /showthread.php?t=174671
还在为找内核未导出函数地址而苦恼嘛?
还在为硬编码通用性差而不爽吗?
还在为暴搜内核老蓝屏而痛苦吗?
请看这里:
最近老要用到内核未导出的函数及一些结构,不想再找特征码了,准备到网上找点符号文件解析的代码抄抄,也玩玩符号文件解析获取未导出函数,可惜资料寥寥无几,下了一些代码,发觉编译后问题不断,有的编译通过了却取不到任何地址,弄了半天白弄了,于是静下心来看dbghelp的说明文件(中文的都木有),发觉dbghelp用起来很不爽,由于版本太多,又是32位和64位什么的,最要命的是dbghelp的说明文件里所有升级了的函数一律找不到旧函数的说明了,加之编译器里包含的相关文件版本不一,里面的函数用起来经常出现莫名其妙的问题,我估计也就是网上抄来的代码在自己机子上不能用的原因吧。于是自己写了个Dll,放几个接口,保证在其他电脑上也可用。
先说下思路:
1、InitSymHandler(进行一些初始化)
1.1、先创建一个目录&symsrv.yes文件,没这个symsrv.dll不会自动下载符号文件
1.2、取自己进程句柄,用GetCurrentProcess取的没用,原因不明,网上的代码很多用这个,但我用死活不行
1.3、设置符号文件目录,调用SymInitialize进行初始化
2、LoadSymModule(加载符号文件)
2.1、使用SymGetSymbolFile来取得符号文件,如果搜索路径没有这个文件,那么将从微软服务器下载,然后调用SymLoadModule64加载它
2.2、路径设置如:srv*&xxxx&*/download/symbols
3、GetSymByName(获取未导出函数或变量地址)
3.1、上面2步好了后第一次运行时会下载符号文件,要等一会(机子一定要保持联网-&-&当我白说),下载好后以后运行就快了
3.2、GetSymByName会调用SymGetSymFromName根据函数名称获取其地址,我用网上说的EnumSyms怎么也不行,不是调用失败就是得到的数据是0,蛋疼不已,不得已从dbghelp翻了这个函数出来了
4、CloseSym
不需要符号文件了后调用这个函数把符号文件打开的一些句柄什么的关闭,退出,没什么好说的
调用形式在SymbolAnalyzeDll.inc里已经定义了,用汇编的话直接包含就行了,其他自行改改就好,暂时不支持64位,虽然里面用的都是64位的函数。折腾了1天多被莫名其妙的各种问题弄得筋疲力尽,结果弄了个这么个东西,离我的设想还好远,源码也附上,有兴趣的朋友可在此基础上增加更多功能,暂时不想写了,所以有更好的版本记得发给楼主我也用用。
测试程序和调用示例都包含在附件里了,注意里面的ModuleBase_win32k内核基址我硬编码的,这个要自己改,ring3下怎么获取内核文件基址还没实践过,内核下遍历下就可以了,所以就懒的写了,不过不传入内核基址也没关系,只不过返回的是相对基址的偏移,然后+下基址也没问题。
PS:如果网络不好可能会调用失败
源码-Dll-测试程序(更新了下,发现CloseSym有个错误,现在更新了调用LoadSymModule的ModuleBase为0也可以返回正确的地址,而不是偏移):
.*转载请注明来自看雪论坛@
被 organic 最后编辑
共 2 位会员感谢 organic 发表的文章:
注册日期: May 2008
现金: 238 Kx
获感谢文章数:2获会员感谢数:2
, 16:00:00
先mark,以备后用
注册日期: Oct 2008
现金: 487 Kx
获感谢文章数:0获会员感谢数:0
, 16:23:02
注册日期: Mar 2011
现金: 100 Kx
致谢数: 15
获感谢文章数:0获会员感谢数:0
, 16:58:43
thanks&for&share!
注册日期: Aug 2006
现金: 92 Kx
获感谢文章数:2获会员感谢数:2
, 17:34:42
注册日期: Jul 2010
现金: 186 Kx
获感谢文章数:9获会员感谢数:123
, 18:19:58
好东西啊好东西,正要找这方面的资料研究一下呢,谢谢分享~
注册日期: Mar 2012
现金: 47 Kx
获感谢文章数:2获会员感谢数:5
, 20:24:56
注册日期: Nov 2005
现金: 70 Kx
致谢数: 13
获感谢文章数:1获会员感谢数:1
, 21:31:34
注册日期: Mar 2007
现金: 637 Kx
致谢数: 19
获感谢文章数:11获会员感谢数:70
, 23:45:32
擦&吓我一大跳,原来符号
注册日期: Aug 2007
现金: 555 Kx
致谢数: 22
获感谢文章数:1获会员感谢数:1
, 00:33:29
注册日期: Jul 2009
现金: 457 Kx
获感谢文章数:11获会员感谢数:79
, 08:52:05
作为学习调试技术来说还是不错的。
注册日期: Nov 2010
现金: 83 Kx
致谢数: 32
获感谢文章数:1获会员感谢数:1
, 09:30:41
最初由 房有亮发布
擦&吓我一大跳,原来符号
注册日期: Dec 2012
现金: 148 Kx
获感谢文章数:0获会员感谢数:0
, 10:10:37
makemake~~
注册日期: Apr 2010
现金: 290 Kx
致谢数: 15
获感谢文章数:1获会员感谢数:3
, 11:13:38
mark,mark~
注册日期: May 2011
现金: 337 Kx
致谢数: 10
获感谢文章数:2获会员感谢数:7
, 11:36:47
我草,居然精了!!我还以为大家都知道这方法,我跟我的小伙伴们都惊呆了!!
dbghelp.dll&加一个回调就可以搞定,目测代码数不超过20行.
windbg其实也只是调用dbghelp而已.用dbghelp下载符号文件,再用dbghelp去解析.20行代码足够鸟.M$标准,而且M$还提供了调用范例.&
我在想这种跟M$做重复功的东西可加精么?而且论坛上早有这样的东西鸟,
被 exediy 最后编辑
该主题: "【原创】告别硬编码-发个获取未导出函数地址的Dll及源码" 因在一定的时间里没有任何回复而自动关闭。如果您还对该主题感兴趣或者想参与对此主题的讨论,请您重新发表一篇相关的新主题。
您不可以发表主题
您不可以回复帖子
您不可以上传附件
您不可以编辑自己的帖子
论坛论坛启用
用户控制面板
会员在线状态
CrackMe攻击篇,分析文章提交区
『看雪众测/众包』
『求助问答』
『经典问答』
『资料导航』
『软件调试逆向』
『密码学』
『编程技术』
『C32Asm』
『MDebug』
『安全工具开发』
『加壳与脱壳』
『CrackMe&ReverseMe』
『资源下载』
『Android 安全』
『Android 开发』
『iOS安全』
『WEB安全』
『漏洞分析』
『外文翻译』
『招聘专区』
『职业生涯』
『15PB培训』
『麦洛克菲培训』
『茶余饭后』
『安全资讯』
『论坛活动』
6)PEDIY Crackme竞赛2009
7)看雪十周年专版
8)腾讯公司2010软件安全竞赛
9)2011 Exploit Me竞赛
『图书项目版』
《加密与解密(第三版)》
《C++反汇编与逆向分析技术揭秘》
《Android软件安全与逆向分析》
『论坛版务』
所有时间均为北京时间, 现在的时间是 .
&&& 看雪学院()
| 提供带宽资源
|&微信公众帐号:

我要回帖

更多关于 js 导出函数 的文章

 

随机推荐