分类目录归档:C/C++

C++ 学习笔记

C++ 深拷贝与浅拷贝 系统默认提供的拷贝构造只会进行简单的值拷贝, 如果成员属性中有指向堆区空间的数据, 那么简单的浅拷贝会导致重复释放内存的异常。 解决上述问题, 需要自己提供拷贝构造函数, 进行深拷贝。 C++ 构造函数调用 C++ 构造函数列表初始化语法 在构造函数后面加 ” : 属性(值, 参数) , 属性(值, 参数) …… “ 假设我们有个human类, 并且私有成员变量有a, b, c, […]

C/C++调用WMI获取硬盘CPU序列号网卡地址

最近做个简单的网络验证, 需要取硬件的一些信息, 例如CPU序列号, 硬盘序列号, MAC地址, OS名称等等, 折腾了一天终于搞定了并且做了些简单封装, 先放个截图 stdafx.h main.cpp WMI编程参考资料: https://social.msdn.microsoft.com/Forums/sqlserver/en-US/9d7a00a4-6bcd-444b-a0e2-a49e2b19e350/please-i […]

C/C++调用openssl 编译后的程序在XP系统下找不到bcrypt.dll

程序在win10上却可以正常运行但是放到XP下就提示找不到链接库等等的一些错误。 问题原因 80%是编译openssl时没有指定 -D_WIN32_WINNT=0x0501 选项导致xp无法支持 解决方法 重新编译openssl库并指定 -D_WIN32_WINNT=0x0501 选项即可。 编译方法 下载安装ActivePerl,nasm汇编器,openssl库,配置好环软件境变量。 打开Visual Studio命令工具, […]

C/C++ 生成随机银行卡号可过Luhn校验

如何随机生成一些能通过Lunhn算法校验的银行卡号数据 ? 要想生成真实卡号数据就必须要了解银行卡号的规则以及校验方式, 下面列出一些银行的卡号前六位规则 (以19位卡号为例) 银行卡前六位是发卡银行识别号(BIN),这个号码可以提供的信息包括这张卡属于哪个信用卡组织,这张卡由哪个银行发行,这张卡是什么类型的卡片。  银行卡的最后一位是校验位,用于卡号验证。 从第7位到倒数第2位是发卡银行使用的,包含的内容有开户行位 […]

jeb3.0 动态调试app寻找登录加密全过程 (二) – POST登录代码实现

在上篇文章 https://www.citext.cn/2689.html 中我们成功的分析出所有的加密, 现在用C++来实现整个登录过程, RSA和AES CBC模式加密是调用openssl库来实现的, http提交用的libcurl库, 全部都打包到工程文件了 工程文件下载地址: https://66-1251737204.cos.ap-beijing-1.myqcloud.com/citext.cn/project/cu […]

jeb3.0 动态调试app寻找登录加密全过程 (一)

准备好工具: JEB调试器, 逍遥模拟器, apk文件。 首先打开JEB调试器, 拖入要进行调试的apk文件, 双击JEB软件右侧工程浏览器中的Manifest xml文件, 然后ctrl+f搜索一下字符串 debug , 看看是否能搜索得到, 要想apk可调试那么这个xml配置文件中的application标签下会有字符串 android:debuggable=”true”。 如图: 很好, 什么也没 […]

C/C++ 使用SetWindowsHookEx 设置全局键盘钩子

DLL方式: SetWindowsHookEx 设置全局低级键盘钩子屏蔽所有键盘消息, 除了”ctrl+alt+.” 屏蔽不到之外, 其他按键消息都是可以屏蔽到的, 然后呢hook代码写在了dll中, 弄这程序主要目的就是为了防止误触键盘。 其实WH_KEYBOARD_LL类型低级键盘钩子不用写在dll中的 放张效果图: 这两个工程文件我都打包好咯, 编译环境是vs2015, 下载地址: https:/ […]

C/C++ libcurl 设置网页链接地址含字符 ‘#’ 导致截断

使用libcurl请求一个网页时, 如果设置的链接中包含字符 ‘#’ 时, 实际请求的链接将会与设置时的链接不同, ‘#’ 后面的文本将会被截断。 尝试过将 ‘#’ 替换为%23也不行, 不知道这个问题该如何解决, 就先记录一下把! 2020/8/10 21:10 哎呀疏忽了, 原来将 ‘#’ 替换成%23是可以解决的! 本文到此为 […]

分享一份C/C++ libcurl库 支持ssl+使用例子

libcurl是一个免费开源的客户端url传输库,支持多种协议, 已经被很多知名的大企业所采用。 官方项目github地址: https://github.com/curl/curl 我的编译环境:vs2015,库版本:curl-7.70.0+openssl-1.1.1g, 并且都支持XP。 已编译库下载地址:https://pan.baidu.com/s/1XO0ivqOu8R0RUVKmRYEpeg 提取码:uf81 下面 […]