四时宝库

程序员的知识宝库

Windows API 编程,富文本编辑控件

什么是富文本编辑控件?

富文本编辑控件不仅能输入、编辑、打印和保存文本,还可以设置文本、段落格式等,并可包含嵌入式组件模型COM对象。富文本编辑控件几乎支持所有用于多行编辑控件的消息通知代码,因此已使用编辑控件的应用程序可以轻松更改为使用富文本编辑控件。

富文本编辑控件具有多个版本,我们采用4.1版本,动态链接库为Msftedit.dll,窗口类名为MSFTEDIT_CLASS。

Exe内部用MapFileAndCheckSum检查完整性

本篇文章属于《518抽奖软件开发日志》系列文章的一部分。


我在开发《518抽奖软件》(www.518cj.net)的时候,为了防止被破解,需要检查软件exe的完整性。MapFileAndCheckSum 是系统提供的API可以用于在代码中检查自己的完整性。exe搞代码签名也没关系不影响此函数。


百度身份证C++离线SDK接入(百度一下身份证)

先看身份证正面、背面识别效果。

效果

图像批量切割并输出(C语言)(图像分割输出的结果什么)

/*

功能:

图像批量切割并保存到预设置目录下

文件名前缀一样为同一个文件中切割出来的,切割后的文件名有规律是为了方便以后文件恢复或者合并作准备。


切割尺寸可以手动输入(要自己添加或替换相应代码)

本示例是按200像素为单位切割的

支持纵向切割和横向切割,最后一个碎片若不足200像素会自动补齐到上一张切割碎片的后面,所以最后一张切割碎片有可能不是200像素宽/高


轻松玩转windows控制台(八)阴影效果的彩色文字和字体大小设置

写在前面

这两天在网上看到有视频回顾国内计算机发展的历史,其中UCDOS6.0、wps1.0等经典软件界面,一下子让我回到了学生时代。

我是从96年接触电脑,97年学习计算机,98年进入计算机专业,那时候学的数据库还是foxbase,后来我严重怀疑之所以学Foxbase,是因为教材是我们老师编写的缘故......那时候学的最好的就是汇编语言和c语言了。最后悔没认真学的就是数据结构和freeBSD,当时教FreeBSD的老师,现在想来当时真的算是个大神了,只可惜年轻不懂事,没有认真听课......

攻击Windows平台NVIDIA驱动程序(攻击win7)

作者:overXsky

预估稿费:200RMB

投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿

前言


现代图形驱动程序是十分复杂的,它提供了大量有希望被利用的攻击面,可以使用具有访问GPU权限的进程(比如Chrome的GPU进程)进行提权和沙箱逃逸。在这篇文章中,你们将看到如何攻击NVIDIA内核模式的Windows驱动程序,以及在此期间我发现的一些bug。我的这项研究是Project Zero的一个20%项目的一部分,在此期间我总共发现了16个漏洞。

面向对象的可复用设计模式之中介者模式(19/24)

备忘录模式(Memento Pattern)又叫做快照模式(Snapshot Pattern)或Token模式,是GoF的23种设计模式之一,属于行为模式。

备忘录模式是指在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。

当你需要让对象返回之前的状态时(例如, 你的用户请求“撤销”), 可以使用备忘录模式。

该模式用于保存对象当前状态,并且在之后可以再次恢复到此状态。备忘录模式实现的方式需要保证被保存的对象状态不能被对象从外部访问,目的是为了保护被保存的这些对象状态的完整性以及内部实现不向外暴露。

C/C++编程:wcscmp、wcscpy和wcslen函数



wcscmp()函数

所述wcscmp()函数定义在cwchar.h头文件。wcscmp()函数用于比较两个以null结尾的宽字符串,并且此比较是按字典顺序进行的。

句法:

int wcscmp(const wchar_t * str1,const wchar_t * str2);

Android开发3年渣渣面试5家大厂获得offer,分享一线大厂面试题


如梦朦胧

九月份的时候有了换工作的躁动,然后投了某度等几个大厂的Android岗位,本以为像我这种非211、985工作经验没几年的渣渣只能被直接pass,结果却意外的收到了电话,真是受宠若惊。经过电面,技术三面,然后就是等通知到最后拿到了offer,如梦一般,真是挺激动的。

面试的准备

Flutter 实现视频全屏播放逻辑及解析

作者:恋猫de小郭

前言

相信做过移动端视频开发的同学应该了解,想要实现视频从普通播放到全屏播放的逻辑并不是很简单,比如在 GSYVideoPlayer 中的动态全屏切换效果,就使用了创建全新的 Surface 来替换实现:

  • 创建全新的 Surface ,并将对于的 View 添加到应用顶层的 DecorView 中;
  • 在全屏时将新创建的 Surface 并设置到 Player Core ;
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接