CATEGORY / Software

Process Explorer,程序员的任务管理器

今天在一位曾经的专业是经济管理学的编程大拿那儿看到了 PE 这个小工具的推荐,下来试用了下果然超级强大,已然让我放弃 Windows 自带任务管理器。PE 的基本功能见下图,一目了然,不仅能以层级关系列出所有进程,其 CPU 占用、内存占用等数值统计和 CPU 历史占用图也更符合程序员的需求。

CONTINUE READING »


征服 Visual Studio 的 Editor

  • 块选中
  • 类似 UltraEdit 里的“列模式”,按住 Alt 键再移动光标,就可以选择一块范围内的内容,而不必被束缚在只能一行接一行的选中方式了。

  • 整行剪切 / 复制 / 粘贴
  • 平时我都是用鼠标移到一行最左边的行号区去选中一行,然后执行复制或拖动等操作,其实,只要光标在某一行,直接按 Ctrl + X / Ctrl + C,就等于剪切/复制整行了,非常方便。

  • Clipboard Ring
  • 一直以来,当需要在多个文件中复制粘贴多个内容时,我都很笨地挨个 Ctrl + C / Ctrl + V,从来也懒得想是不是该搞个 multi-clipboard 工具来提高效率 -,-|||

    其实,从 VS2003 开始,VS 就已经内置了多重剪贴板的功能,虽然只支持当前 VS 进程内多文件间的复制粘贴,这就是 Clipboard Ring。Clipboard Ring 采用 LIFO(后进先出)的方式组织,即最后被复制或粘贴的内容排在环的最前面,最大支持 10 块剪贴板。用法很简单,对需要复制的多个内容块按 Ctrl + C,然后到需要粘贴的地方按 Ctrl + Shift + V,选择需要粘贴的内容就 Ok 了。每个 VS 版本的 Clipboard Ring 操作略有不同,在此不赘述了。

  • 代码重构
  • 待续……


禁止 Windows Update 安装更新后自动重启

Windows XP中如果将 Windows Update 设置成“自动”,那么 Windows 每次安装完更新以后会非常“体贴地”进入自动重启倒计时,一不留神,一道惨叫便回荡在夜空……(这种侵犯人权的贴心服务在 Vista 被去掉了)

要关闭这一讨厌的特性,还没有简便的方法,只有修改注册表才行:

  1. 运行 regedit,打开注册表编辑器;
  2. 进入键:HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\WindowsUpdate\AU\,如果没有找到这个键,新建一个;
  3. 新建一个名为 NoAutoRebootWithLoggedOnUsers 的 DWORD 值,值设为 1(为 0 则允许自动重启)。

修改完似乎不用重启即可生效。

除了强制自动重启,Windows 还懂得攻心战,隔三差五地弹出对话框提示需要自动重启,即使选择了稍后重新启动(Vista 可以选择提示间隔,已经是巨大的进步了)。

对于这个问题,组策略编辑器里倒是提供了关闭的功能:

  1. 运行 gpedit.msc,打开组策略编辑器;
  2. 进入“计算机配置” > “管理模板” > “Windows组件” > “Windows Update”,双击“计划的自动更新安装后不自动重启动”,在弹出的对话框中选择“已启用”,然后“确定”即可。

这项设置重启后生效。


被病毒修改并锁定了 DNS

昨天为了给某人找 Source Insight 的 keygen,轻易运行了国外网站上下的一个 .exe (Symantec 未报有毒 @_@),结果发现不对劲,已然晚矣。。。初步检查系统,症状第一季:

  1. 启动项(HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun)里多了一个 *.tmp 的文件,文件位于 C:WINDOWSTemp
  2. 系统开始变慢;

删掉这个文件及其启动项,重启,症状第二季:

  1. 依然慢;
  2. Outlook 无法登陆服务器;
  3. 公司员工入口网站无法打开(其他内外网均正常);
  4. 重新设置系统的登陆域(Domain),报无法解析域地址;

不用 DHCP 了,手动设置 IP、网关、DNS 地址,发现症状第三季:

  1. DNS 被锁定为 85.255.xxx.xxx

这时感觉问题有点严重,Google 了一下,看了这两篇文章(12),虽然还是不知道是什么病毒,不过至少有眉目了,检查系统,发现症状第四季:

  1. 每个盘符根目录下面都有两个隐藏文件:autorun.inf 和 recycledboot.exe,需要关闭“隐藏受保护的系统文件”选项才可见;
  2. C:WINDOWSsystem32 下有一个 kdxxx.exe 的文件,xxx 为三个随机小写字母,文件描述为空,且无法删除,说正在被其他程序使用,很可疑;

最后,删除每个盘符根目录下的那两个隐藏文件,重启 F8 进入安全模式,删除该kdxxx.exe文件,再重启,一切正常,可以登陆域了。

以上斜体表示病毒干的好事,粗体表示我杀生时作的恶。


关掉 WordPress 下的 directory listing

刚才看到这篇文章,检查了下我的 WordPress,发现也有这个问题,赶紧修改了 WP 根目录下的 .htaccess 文件,在文件最后加上如下语句:

# Prevents directory listing
Options -Indexes

重新上传,果然 Ok,所有目录访问自动转到 WP 的 404 页面,比最笨的到每个文件夹下建一个空的 index.html 的办法好使多了。


WordPress Permalinks 出现 404 错误的解决办法

前几天在新机子上装了 WAMP,下载了 WordPress 2.5.1,并配置好数据库,准备继续我那很久很久以前未完成的 theme。

然而,在 Settings 里改变了默认的 Permalink Structure 后,发现所有包含地址重定向的页面都 404 了。很奇怪,理论上 2.5.1 应该已经解决了 Permalink 的 bug 了呀。把 Permalink Structure 从

/%year%/%monthnum%/%postname%/

改成

/index.php/%year%/%monthnum%/%postname%/

页面都能打开了,看来应该是重定向的问题。

三上 Google,终于在这篇文章里找到了原因,果然是我本地的 WAMP 没打开 rewrite 功能,解决办法如下:

打开 Apache 的 httpd.conf 文件,搜索“mod_rewrite”,应该能找到这一行:

#LoadModule rewrite_module modules/mod_rewrite.so

把最前面的“#”删掉,重启 Apache 服务,就好了~

CONTINUE READING »


修复被 PartitionMagic 损坏的 Vista 分区表

DELL C521 台机(160GB)预装的 Windows Vista,默认仅分了一个系统分区(140GB)和一个特殊的备份分区(10GB)。由于我第一次接触 Vista,很无知,想当然的企图用 PowerQuest PartitionMagic 8.0 for DOS 来对硬盘进行重分区。一进 PQMagic 就提示“硬盘上有错误,是否要修复”,不假思索地就按了“是”,结果,分区表被损坏了,连 PQMagic 自己都无法再识别该硬盘上的分区了(错误 #105,进去时报分区有重叠),靠!当然,机器也乖乖地报找不到硬盘还是操作系统之类的错误(# 具体文字我记不清了)。

由于硬盘里保存了很多有用信息,不到万不得已我可不想重格硬盘重装系统,先找办法恢复分区表和系统吧。查了大量文章,最先尝试“fdisk /mbr”,无效(我也觉得应该不关MBR的事);用 Windows XP/Vista 系统光盘自动修复,无效;用 DiskGenius(原 DiskMan)的“重建分区表”,结果建出一大堆乱七八糟的分区,总容量 1TB+,我抓狂了。

正当无奈之际,想起刚才 PQMagic 报的分区有重叠错误,在 DiskGenius 里果然看到一个不知名分区和那个 DELL 的特殊分区的中止柱面/磁头/扇区数值明显有误,都被改成了磁盘最后一个扇区的值了。手边另有两台本本(一台 Vista 一台 Xp),立马分别运行 DiskGenius 查看分区表信息,估摸着该怎么改这损坏了的分区信息(因为我不懂这个。。。)。我猜就是把上一分区的结束位置和下一分区的起始位置接上(刚好相差一个扇区),试试吧,改好,存盘重启。

CONTINUE READING »