一次装Windows的经历

妹子新工作居然要求自带电脑,然后就报到前一天晚上开始折腾一台老ASUS笔记本,结果折腾得自己改坏了系统登录密码,再也进不去系统,只能重装解决。 说起来已经好多年不装系统了,年纪越大越懒得折腾。从抽屉翻出好久没用过的U盘准备做安装盘,结果用Win32DiskImager烧了几次U盘都不能启动,我以为是备份的镜像文件有问题,打算第二天去公司找好用的镜像再做。 第二天到公司问同事要到了中文Windows7旗舰版的镜像和序列号,顺便问了一下同事用什么软件烧录,才意识到可能是Win

C++11 lambda表达式tips

C++11加入的lambda表达式是一大进步,大概这样用: int a = 1; auto f = [&a](int n)->int { return n+a; }; int b = f(2); 这段代码定义了一个lambda表达式,接受一个int变量参数,返回一个int值,同时又要捕获(即在lambda表达式内访问)外部变量a的引用。 这里有一些tips: 捕获内建类型变量,即不是class/struct的实例的,如果没有修

把blog托管到Coding Pages

自从重新开始写blog,都是托管在github pages上,然后通过cloudflare中转以及https证书。这一套方案总的说来工作得挺好的,但是,万事就怕但是,在大陆cloudflare的服务并不是特别稳定。后来发现Coding.net也提供Pages服务了,还集成了Let’s Encrypt的证书服务,于是就迁过去了。 迁过去有一些事要解决: 在Coding.net上创建一个新的仓库,添加一个remote:git remote add coding git@

为4个平台编译Boost

公司的项目至今仍在使用Boost 1.56.0版本,最近发现Boost.uuid在Windows上居然会一直尝试去访问/dev/urandom,进而转移到系统盘根目录urandom文件,然后客户认为这会有安全隐患,需要修正。我随手看了一下Boost.uuid在1.56.0和1.64.0上的源代码,貌似确实1.56.0版并没有分系统实现,在1.64.0上为Windows系统使用平台特有的实现。于是我就建议升级Boost,然后发现这个third party的owner居然是我们组

几个使用MinGW开发遇到的问题

之前提到过我用MinGW版本的Qt遇到几个问题,现在基本解决。 不能编译Lua源代码。我在日志查看程序中嵌入Lua解释器来实现扩展功能,图省事把所有Lua源代码都拷到工程中,跟程序源代码一起编译,但在用MinGW编译时会报一些错误: D:\Works\dev\cjlv\3rdparty\lua-5.3.3\src\lobject.c:286: error: 'strcpy_instead_use_StringCbCopyA_or_StringCch

一些Qt tips

Qt在Windows上支持众多编译器套件/版本,图省事可以直接从msys2的仓库通过pacman安装,有32位和64位,静态链接和动态链接总共4个包。还可以通过pacman安装Qt Creator,也有32位和64位共2个版本。经过简单试用下来发现,从msys2安装的Qt与从官网下载安装的MinGW版本Qt基本相同,但比MSVC版本要不好用些,我遇到几个问题不能解决: 编译Lua源代码失败 找不到SHGetKnownFolderPath定义 没有WebEngi