星期六, 七月 28, 2007

tracert结果很怪

今天发现一个网站上不了。
用tracert看了看。发现结果很怪,明明到了目标机不停下来。
看来目标机器上配置了什么东西。
目标机出现两次,但不是循环路由,如果是循环路由,会一直重复下去,现在只在目标机重复两次。
不知道是哪种故障。

Tracing route to pim.chinamobile.com [211.138.200.37]

over a maximum of 30 hops:


... ...

14 90 ms 93 ms 88 ms 218.200.253.237

15 85 ms 83 ms 90 ms 218.200.252.129

16 114 ms 122 ms 117 ms 218.200.252.150

17 108 ms 109 ms 108 ms 218.200.254.102

18 118 ms 117 ms 113 ms 211.138.206.38

19 114 ms 113 ms 113 ms 211.138.201.6

20 114 ms 113 ms 113 ms pim.chinamobile.com [211.138.200.37]

21 115 ms 114 ms 115 ms pim.chinamobile.com [211.138.200.37]

22 * * * Request timed out.

23 * * * Request timed out.

24 * * * Request timed out.

25 * * * Request timed out.

26 * * * Request timed out.

27 * * * Request timed out.

28 * *

星期五, 三月 30, 2007

学习WIX

这两天有一个项目要打包,在学习WIX.

这里有详细的学习教程
http://www.tramontana.co.hu/wix/




在网上搜了一下,发现有很多人都用wix做过asp.net和sql的程序的安装包。
大家在做的时候都碰到并解决了各种问题。为什么没有人共享一个完整的ASP.net和sql的安装方案,省得走弯路。等我研究好了,考虑是否共享方案。

WIX有自带的CustomAction可以创建数据库,不知道这个创建数据库的定制任务有没有其它依赖关系。会不会要机器上先有Sqlserver的OLEDB驱动。谁要是知道的话请告诉我。

星期四, 三月 29, 2007

对Emacs进行了改造

下载了Emacs23的源代码,把里面的win32的输入法处理部分改成了使用Unicode 的API.
这样用windows的输入法,输入去当前codepage不一样的语言就没问题了。

我等这个功能等了很久了,一直看不到别人加,终于忍不住自己加了。
做过了才发现,如果对Win32的系统很熟的话,修改还是非常容易的。

Emacs23的代码很多,我没有去尝试看懂它的全部代码。即使我修改好了,我也不知道Emacs到底是什么样的结构。

我看代码是直接用cscope。首先找到Win32的消息循环部分。因为输入法的几个消息必须从这里进入Emacs。
我首先查看现在的WM_CHAR是如何处理的。发现Emacs会把操作系统过来的消息,封装成平台无关的消息,送到自己的消息循环中。

而且在自己的消息循环里可以处理unicode的字符和ascii的字符。这就方便多了。我只要把Windows的输入法的字符串用unicode API取出,一个字一个字送入Emacs内部的消息循环就行了。我知道应用程序没有处理输入法的完成编码的消息时,Windows默认会把字符串一个个的转成WM_IME_CHAR消息,如果还没有处理,会把每个WM_IME_CHAR转成2个WM_CHAR。这就是现在的Emacs的win32输入法部分的工作情况。由于Emacs使用的是win32的ansi API。窗口类是非unicode api注册的,所以只能接受ANSI的消息,WM_IME_CHAR的消息里是双字节的字符,不是Unicode的,所以我必须在这之前处理。用unicode的API自己取出字符串,自己一个个的转成Emacs内部消息,这样修改是最小的。

实际用了三天的时间研究代码和修改。最后还加了光标跟随和设置输入法用的字体的功能。

开发过程中发现,一个日本人维护着一个功能更复杂的输入法部分的patch.
不过我的代码更短,功能当然也只有最基本的。

http://yyyccclll.googlepages.com/emacs.patch

星期日, 二月 18, 2007

星期三, 一月 31, 2007

学习Emacs

我一直用的VIM,自认用得很熟了,基本上用来完成所有的文本编辑。也会自己定义 ftplugin.

最近想学学Emacs看看。

发现一打开emacs,我连最简单的编辑任务都不能完成,看来还得找点资料。

在网上搜索了一下发现两个简单点的。
http://zhdotemacs.sourceforge.net/emacs/book.html
http://www.cbi.pku.edu.cn/chinese/documents/csdoc/emacs/

感觉VIM在帮助方面做得很好,联机帮助都是中文的。面且内容的量还是可以阅读的。
面emacs全是英文的不说,内容也太多了,可能因为功能太强大了,但是这么长的帮助让人望而却步。

Gmail联系人丢失

今天早上,发生了一件让我震惊的事情,不是地震了,也不是光缆断了。
我打开Gmail时,一个小小的出错信息显示了出来。
我像往常一样,关掉IE重新登录,这时我的联系人里面全部空了。

同一时间在地球上的各个地方,都有人丢失了Gmail联系人。

http://groups.google.com/group/Gmail-ABCs/browse_thread/thread/54fe251cee45504d/#

===========================================
晚上我发现所有联系人都回来了,好像比原来还多了。
GTalk里的显示顺序有点变,有些从来没聊过天的到了第一页。