tmf19901124 发表于 2021-3-13 21:41:12

火山驱动程序开发插件1.3.1

本帖最后由 tmf19901124 于 2021-4-22 15:05 编辑

火山驱动程序开发插件1.0版本新鲜出炉,具体的使用方法在打包文件里. 花了3天时间,后续有空会继续更新.

                                                                                                                        更新记录:2021/03/13:
修复了编译为调试版本时火山加入了断言导致编译出错的问题
版本1.2
修复了动态获取VS IDE盘符出错的问题
版本1.2.1
新增插件对火山驱动模块内外部头文件的支持                                                                                                          版本1.3
新增对文本型和数组操作的支持,此版本编译驱动程序基本无压力,其中的某些核心库的类只做了x64的支持,比如获取SSDT的操作,功能类库最好由自己编写,驱动与应用层不一样,很多功能与系统版本有关,需要做很多的兼容,我没有时间去每个系统测试.文本型操作与火山应用层文本型不一样,插件实际将CVolString 替换成了char*,所有的文本型操作都基于c语言字符串操作,并遵守内核字符串操作规则,返回文本型数据时,实际是返回的字符串指针,必须确保字符串指针在函数返回后可用,常规操作是在函数内申请内存,把文本复制进去,在返回申请的内存指针,外部使用完成后需要释放内存.
版本1.3.1
新增对c++ STL vector的支持
重写基本数据类型数组操作类,采用封装vector方式

同时支持32/64位火山

修复了一些东西


附件添加了用火山写的应用层和驱动层的加载卸载与通信简单例子.有任何问题可以加我QQ联系.

另外没有做动态的获取VSIDE路径,只是简单的从火山里取到VS安装路径,因为VS IDE版本路径不一样
........................................................................下个版本新增内核hook库的支持!
解压:
1,解压msimg32.dll文件到对应32/64位火山根目录(与voldev.exe同目录)
2,解压火山IDE模板到   火山根目录\plugins\vprj_win\wizard\template ,然后火山IDE新建解决方案就有驱动程序模板了
3,解压驱动核心模块到火山根目录\plugins\vprj_win\classlib\user ,此文件里定义了驱动程序的入口,以及内部宏
重要:
1,火山设置的VS编译器必须为VS2019完整安装(其他版本没有测试,编译器路径可能不同出错).
2,vs2019必须集成安装WDK驱动程序包
3,支持文本型,文本型将与内核驱动模式一致,替换为char*类型,文本型实际为字符串指针,文本操作需要按照内核字符串操作规则
4,只在本机上测试,其他电脑可能会因为乱七八糟的问题出错,出错大概率是路径定位错误,有问题可以帖子回复.
5,内核API暂时没有时间封装,自己使用嵌入调用,由于火山不支持C结构体,使用API时尽量避免使用结构类.6,编译原理是把火山翻译后的文件转换为VS工程,如果出现错误无法编译的话,可以在项目的linker目录找到对应的VS工程,用vs2019打开试试



















乐易论坛 发表于 2021-3-13 21:57:25

前排广告位 插件用的是下面这个帖子的模板写的;P
[火山项目模板]msimg32.dll劫~持代码模板
http://bbs.voldp.com/forum.php?mod=viewthread&tid=8309
(出处: 火山软件开发平台)

丰收 发表于 2021-3-14 10:45:46

厉害:victory:

xqnh520 发表于 2021-3-14 13:06:57

牛B。。。

abcfox 发表于 2021-3-14 13:11:34

好牛逼,驱动程序插件,谢谢楼主分享!

qzone 发表于 2021-3-14 14:43:11

驱动程序插件

伟业 发表于 2021-3-14 14:55:09

好牛逼,驱动

fengyishen 发表于 2021-3-16 00:40:22

这是啥?让火山具备开发驱动的能力?

tmf19901124 发表于 2021-3-16 00:44:22

fengyishen 发表于 2021-3-16 00:40
这是啥?让火山具备开发驱动的能力?

是的,已经可以正常开发驱动了。

搞事的扛把子 发表于 2021-3-22 19:07:55

高级功能,厉害哦
页: [1] 2 3 4
查看完整版本: 火山驱动程序开发插件1.3.1