Windows

cmder 颜色配置

工作需要,现在在用 Windows 10 作为主力开发系统,然后根据以往使用 Linux 和 macOS 的经验,一个好用的终端还是必不可少的,然后就找到了 cmder,一个非常好用的 Windows 终端环境。

PS. 其实倒也不全是因为工作需要啦,现在的 Windows 10 也已经挺好用的了,现在老了也懒得折腾 Linux 桌面了,苹果的电脑还是那么的贵,当然最重要的是 Windows 上游戏多啊😂

跟 msys2 这种在 Windows 系统中模拟 Linux 环境的工具不同,cmder 的定位是 Windows 自带 cmd 窗口的替代品。现在有很多命令行工具,如 git、node.js 等,都专门针对 Windows 系统进行了优化,而这样的优化版本是需要在 Windows 自己的 cmd.exe 环境下才能正常运行的,这时一个像 cmder 这样的 cmd.exe 增强工具就很有必要了。至于在 msys2 中通过 pacman 安装的版本,特别是 node.js,实际使用中总会有这样那样的问题,大概还是 unix 版在 Windows 下的水土不服吧。

PS. 有了好用的终端,当然还少不了好用的软件包管理器啦,特别是对 Windows 这种并不原生对命令行特别友好的系统来说,能有个管理器帮忙安装和升级命令行工具的话会方便很多。我自己选用的是 scoop,虽然没有 Chocoletey 那么流行和那么多的软件包数量,但胜在可以方便的定制安装位置(Chocolatey 要定制貌似得用收费版才行),对我来说已经够用了。

emmm 进入正题……之前没在 Windows 下搞过 node.js 开发的时候还不知道,原来 Windows 的 cmd.exe 也是支持彩色输出的,而且颜色还挺多😂。这时遇到的一个问题就是,在 cmder 下用 node.js 时总会有些输出的前景色跟背景色一样导致有些字符显示不出来了😂:

初始的 Tomorrow 配色

从上图可以看出(其实我也是过了一段时间才注意到的😂,因为记得我一开始遇到这个问题的时候,还没有这个显眼的背影色来着,也不记得当时用的是啥配色了😂),画红圈的地方就有字符没能正常显示出来。

经过摸索,只要按照下图中的配置就可以把这个颜色问题给修正过来了:

相关的 cmder 配置项

下面是最终效果图:

最终效果图

嘛,虽然原来的背景色没了,不过至少能看了不是😂

VS2010 环境中调试 IE ActiveX 控制时断点不起作用的问题

又是惯例的长了好长时间的草,今天先来篇短的。

工作需要,在使用 VS2010 开发调试 IE ActiveX 插件时,默认条件下下的断点不起作用,这是因为选错了调试器,在工程属性 - Debugging 中的 Debugger to launch 项,选择 Web Browser Debugger ,然后在 HTTP URL 项填本地 HTML 文件的绝对路径,以 file:/// 打头就可以了。

用 Python 操作虚拟网卡

在我的 XTunnel 项目中,已经用 Python 作过这种相对底层的工作了(这说明 Python 果然还是非常强大的,上下层通吃啊),不过那边目前还是只实现了 Linux 的版本。后来我又陆陆续续地把 Windows 以及 Mac 下的操作方法给搞通了,今天就来总结一下。

在 Linux 内核中,特别是在现在的发行版中,应该都已经有了 TUN/TAP 虚拟网卡的驱动程序,看一下有没有 /dev/net/tun 这个文件就可以知道了。如果没有,就执行一下 sudo modprobe tun 这个命令吧。如果还是没有,那就 Google 之吧。下面上代码:

使用 Visual Studio 2008 为 Windows CE 开发编译 OpenSSL

我的编译环境是 Visual Studio Team System 2008 版本 9.0.21022.8 RTM , Windows Mobile 5.0 SDK R2 ( VS2008 自带的版本)。当然, Perl 也是需要的,我装的是 ActivePerl 。我要编译的 OpenSSL 版本是 0.9.8e 。

VS2008 的安装

那个 Web Developer Tools (好像叫这个)的安装会失败,又不能不装,根据网上的说明,要把它的目录单独从光盘上解压出来安装,且安装的时候要挂 Office 的安装光盘(我的 Office 版本是 2007 )。这个装好了之后,再从光盘上安装 VS2008 就没有问题了。