2007年12月30日星期日

Quicktime 7.3.1与Flash:艺术家的公司面对技术问题

今天实在很烦,于是写了这个。
为了“解决”安全漏洞,苹果在最新的Quicktime 7.3.1的更新中彻底取消了对Flash内容的支持。
http://docs.info.apple.com/article.html?artnum=307176
"QuickTime
CVE-ID: CVE-2007-4707
Available for: Mac OS X v10.3.9, Mac OS X v10.4.9 or later, Mac OS X v10.5 or later, Windows Vista, XP SP2
Impact: Multiple vulnerabilities in QuickTime's Flash media handler
Description: Multiple vulnerabilities exist in QuickTime's Flash media handler, the most serious of which may lead to arbitrary code execution. With this update, the Flash media handler in QuickTime is disabled except for a limited number of existing QuickTime movies that are known to be safe. Credit to Tom Ferris of Adobe Secure Software Engineering Team (ASSET), Mike Price of McAfee Avert Labs, and security researchers Lionel d'Hauenens & Brian Mariani of Syseclabs for reporting this issue."
这个态度就有问题。首先大家都应该先了解一点,当年Quicktime 对Flash的支持来自Quicktime 5.0的时代,当时Flash的版本只是4。到了Quicktime 6 ,Quicktime Flash支持的版本变成了5。后来不知什么原因(和Adobe对Macromedia的收购应该无关,因为在Quicktime 7以前Macromedia一直是自立的),这个简单的Flash支持一直停留在Flash 5而再也没有更新过。参考:http://kb.adobe.com/selfservice/viewContent.do?externalId=tn_14041,http://livedocs.adobe.com/flash/9.0/UsingFlash/help.html?content=WSd60f23110762d6b883b18f10cb1fe1af6-7b7e.html。
如果苹果比较负责任,应该和Adobe合作,把Quicktime中的Flash回放支持升级到版本9,这样一切问题都得到了解决。但是两方很显然并不愿这么做:Adobe作为新的垄断者(现在只剩下Corel和Quark两个同一领域内的大对手,M$的银光之类目前还看不出发展前景),现在也开始走向流氓化,迟迟不支持开源Flash播放器,更难说将它的新版本集成到苹果的Quicktime中去;而且现在Adobe似乎忘了它的20年基业诞生于Mac,Mac的CS3比Win版出现了多很多的问题,速度也无法令人恭维。
至于苹果,一向以直接丢弃他们认为“没人用”的技术为荣,以向下兼容为耻。以他们的思维方式,什么看上去“最新”、“最先进”都往他们的产品里丢,结果很多东西做出来仅仅是吸引了少数人的眼球,然后就一直放在那里没有动过。此类东西,像Quickdraw 3D、QuickTime VR、Quicktime在90年代下半对微软AVI的“部分”支持(其实只是支持了1993年版包装格式和寥寥几种Codec(Cinepak、Indeo3-5)而已),当然也包括现在的Quicktime Flash。结果是:Quickdraw 3D、Indeo解码器都没有OSX下的任何版本(这,加上libavcodec的作者们还未能解析Indeo 5,导致在Mac OS X下没有任何软件能播放Indeo5的AVI(!));Quicktime VR,苹果自己的制作软件还停留在1999年的Classic版本,虽然一直都还能支持回放(脚本功能减少了,作不出Loading进度条);Quicktime Flash,7.1.3默认禁止掉了(但是安装程序还是经常错误地把Flash的MIME类型关联到Quicktime身上,导致用Flash的网页显示出错!),现在就干脆借口安全原因搞了个“认证”,实际上是彻底消灭了支持;其他的例子数不胜数,比如10.5系统在几乎完全没有提及的情况下默默地去掉了Classic和很多10.4中有的SCSI卡的驱动,等等。加上Quicktime Win与Vista迟迟无法解决的无数问题(RAID、显卡),让人觉得苹果其实并不是一家负责任的公司。国内的网页木马通常都是使用IE/Windows漏洞和部分特别流行的国内第三方软件漏洞,国外的通常却都是用Realplayer和Quicktime for Windows、JRE的,这也许说明了M$在系统安全、软件更新方面做得比较好,国外懂行的网马作者都不会往上面想(生存周期太短)。微软出过IE的VML支持漏洞MS07-004,但是并没有因此在KB929969中废掉这个早在1998年就被W3C拒绝,以后除了Office的HTML另存为(这个有人用吗?)、Google Maps之外几乎无人使用的标准(参考http://en.wikipedia.org/wiki/Vml);而苹果出现了类似的漏洞,虽然有很多多媒体教学的东西还在用Quicktime内嵌Flash,他们做的却是干脆彻底废掉了Quicktime Flash。
现在开始因为这个而抱怨的人已经出现了。http://lists.apple.com/archives/QuickTime-Users/2007/Dec/msg00040.html(也包括Re)、http://discussions.apple.com/thread.jspa?messageID=6108606#6108606、http://www.oreillynet.com/mac/blog/2006/09/surprise_quicktime_713_disable.html......
也许这就是艺术家们用浪漫主义管理公司的必然后果。アドルフヒトラー这流浪画家搞强也搞垮了整个德国,难道Jobs会走后尘?

2007年12月29日星期六

Netscape is dead, Long live Netscape

http://blog.netscape.com/2007/12/28/end-of-support-for-netscape-web-browsers/
Netscape又一次完蛋了。这个曾经是王者(98年以前),被M$以捆绑方式推广的IE彻底压垮与5.0开发的失败与开源(NS 4.5-4.8,大概是98-2001年),投奔流氓公司AOL门下,Mozilla的兴起,2003年Netscape第一次解散(见Mozilla 1.7之后版本的about:mozilla),变成打了包的Firefox,直至最终垮台。
Netscape的失败可能是理所当然的:最初IE免费,NS却坚持收费;开发个新渲染引擎,开发掉了半个开发团队;选择了AOL这流氓做靠山;在Mozilla一天天崛起壮大的同时,Netscape失去了创造力;然后更沦为简单修改Firefox的东西。
Netscape的灵魂其实一直在Mozilla中,也许它死了,也许它还活着,还在新一代超级流氓Google的支持下,正想打倒IE呢。

2007年12月22日星期六

yksoft1 黑金塔用driver(适合于酷睿1、x1300的Thinkpad R60)

首先声明:只适用于JaS 10.4.8,未在uphuck、xXx等Tiger distro以及Leopard distro测试过。
包含:AppleAzaliaAudio.kext (Core1 T60/R60的AD1981HD)
修改过的ATIRadeonX1000.kext(X1300开QE/CI,但出现鼠标撕碎屏幕现象,请安装mighty mouse等软件解决)
AppleBCM5751Ethernet.kext (内置Broadcom 有线网卡,必须启动后每次手工输入MAC地址,PPPoE可能还要先让网卡手动up)
Mobility.kext (Natit mobility,貌似作用不大)
修改过的PowerManagement.bundle(显示电池容量、充电状态)
请参看压缩文件中的Readme.
Photobucket
下载: r60-94602ec-jas1048drvs.sit

2007年12月11日星期二

试一把OSX86的感觉

虽然自己拥有Mac已经有一段时间,但从来没接触过Intel Mac。这几天有朋友想装OSX86,我就先体验一把,看看可用性如何。
装JaS 10.4.8,搞定我Thinkpad的声卡、网卡用了两天时间。Mobility X1300还是不可以。。唉
毕竟苹果系统只为苹果机专门优化设计,其他的机器就根本不行。这可能比做一个Linux发行版还要困难很多。
Photo Sharing and Video Hosting at Photobucket
另外,MSN Spaces在线编辑器还是不能运行在Safari上。

2007年12月9日星期日

网通 与电信的一个小比较

(C. 为一和电信内部有联系的人士)
C. 16:21:23
对美国的话,这么来动手的100%网通线路
C. 16:21:39
电信的IP速度不可能达到能扫描数据的安全性

C. 16:23:35
换句话说,应该是网通、教育网和政府网站很强大
C. 16:23:54
网通已经有16根国际出口了
C. 16:23:57
电信只有1根
C. 16:24:24
青岛网通对日本上亚太主光纤的速度是个位数的毫秒延时
C. 16:25:57
一会儿给你看一个TRACERT表
C. 16:27:08
Tracing route to wwwbaytest1.microsoft.com [207.46.19.190]
over a maximum of 30 hops:

1 7 ms 5 ms 4 ms 61.236.92.1
2 5 ms 4 ms 5 ms 221.206.7.193
3 6 ms 7 ms 7 ms 221.206.7.129
4 8 ms 7 ms 7 ms 221.206.1.13
5 7 ms 11 ms 7 ms 221.206.0.153
6 12 ms 11 ms 12 ms 61.138.38.5
7 12 ms * 12 ms 61.138.38.177
8 11 ms 15 ms 13 ms 219.158.6.165
9 11 ms 11 ms 18 ms 219.158.3.105
10 14 ms 14 ms 15 ms 219.158.3.106
11 16 ms 17 ms 18 ms 207.46.19.190

tracert complete
C. 16:27:16
我这里网通到微软的速度
C. 16:28:20
北京能直接一根线直达MS。。。你信不?
C. 16:28:37
极度无语的
C. 16:28:47
10 14 ms 14 ms 15 ms 219.158.3.106
11 16 ms 17 ms 18 ms 207.46.19.190
C. 16:28:55
这一级,我一直都无法相信
C. 16:29:20
我更新MS全部的100多个补丁,只需要15分钟不到
C. 16:29:31
包括网上下载IE7和WMP11
C. 16:29:55
.framework也算在内吧
C. 16:30:00
电信不可能的
C. 16:30:23
电信只有在上海和广州有出口,这个出口75%还给了国际语音通讯使用
C. 16:31:57
网通在深圳有,在杭州有,在青岛有3个出口,北京有3个,天津有2个,大连有2个,满洲里有3个陆路,还有2个卫星的

电信和网通,现在对国外后者强很多。狗林匹克基础设施乎?电信与某派别的关系乎?总之搞不清。

另外:msnspace在opera下能用在线编辑器,firefox2.0以上也可以,但firefox1.5还是不行,,无论如何都不能点那个“发布日志”,也不能强制关掉那在线编辑器
而且在Opera下,编辑器非HTML模式中用M$PY输入,文字会出来两次。
但是Opera下日志上下高度被固定、长日志看不全的bug还是存在。

update:(应C.的要求, 改了下)

2007年12月7日星期五

我的一部分Sheepshaver用资源

公开空间地址:http://www.mediafire.com/?sharekey=b88e2ce4ed1308ff91b20cc0d07ba4d240970a3a53ab0bc0

目前有以下文件:

PPC7600.7z、8500.7z、Mac OS ROM.7z:Sheepshaver用启动ROM

os8.6s boot.7z:中文系统8.6精简启动盘

os9.sit、os904chn.sit:中文系统9.0.4精简系统文件夹

stuffit-lite.sit:Stuffit Lite 3.6

stuffit-pack.sea.bin Stuffit Expander 4.0+5.5,Stuffit Deluxe 5.1.5

上面两个sit用软件基本上可以在BII和SS上通用,但注意Deluxe5.1.5对非英文系统的支持问题很大。

更新:加入os8.6.sit (我的一个Mac OS 8.6 英文版系统文件夹)
ClarisWorks4.0SC.sit(简体中文ClarisWorks 4.0)
AppleWorks 6.2 installer.sit

以及几个难以找到的古董软件

再更新:
8.1_Appearance.sit OS8.1的Platinum外观组件(一个控制板、一个功能扩展和一个字体),可以用于更新在68030以上CPU运行(BasiliskII/Sheepshaver均可用,vMac上会使系统无法启动)的7.1/7.5/7.6系统,可以让IE5.1.7运行在7.6上
FinderCH922.sit 中文9.2.2的Finder,可以用于升级9.0.4

2007年12月1日星期六

我看来不准备用Messenger 9.0了

我的假“messenger 9.0”用了这么久,最近真正的Messenger 9.0的beta版又出现了。抓下来一看,我首先看的是它能不能绿色运行。结果,在VPC下装上后,把整个目录拖到主系统下,一运行msnmsgr.exe,显示。。。

Fsck! Messenger一向以来的传统,今天竟然没了?难道完全给.net化了不成?看上去想绿色化这个比较困难(直接用reshacker改掉manifest,把需要的vc8运行库几个dll拷到同一目录下,运行,显示VC运行库错误——错误的调用方式。。)。没办法,运行那个msi装上。看来这个msi原来是配合那个流氓安装程序Windows live Installer运行的,一运行没有任何交互就给自动装上了。登录,登了半天(比我用我的假Messenger9.0慢N倍)登上了。果然是“广告依旧在,几度夕阳红”,功能和8.1、8.5相比变化基本不大。不过它没有像8.5一样每次启动都要我装flash IE插件(我在Vista下不用IE,装插件干什么?)了。

无意中打开一个taskmgr,发现一个我以前没见过的进程“wlcomm.exe”。以我一向的警惕性,我马上就把它结束了。不过与此同时,messenger也随之掉线。看来MSN倒是真的进化了,搞出了双进程——我突然想到了一个木马和流氓界常用名词“双进程守护”(两个或者以上进程/线程互相守护,一个被结束,另一个马上将其恢复)。我找到那个进程所在的目录,将其改名,再登录,登录不能了——

这好像又是它不能被绿色化的一个原因啊。我查看了一下这个beta的release note,里面赫然写着——

- Windows Live Contacts Server - wlcomm.exe 将运行在后台,帮你刷新联系人信息和加快Messenger登录速度.

加快速度?Orz!原本短小精悍(7.0以前)的Messenger,经过7.x、8.x一折腾,内存占用已经快超过腾讯QQ,现在这个新版本干脆又多加了一个进程。我打开了MSN9主窗口,打开两个对话窗口。两个进程一加起来,竟然占用了60兆内存!这是怪物吗?看看一旁的qq2007beta1,同样是开两个对话窗口,占用内存也不过40兆。

现在这个时代,网站流量广告化,软件巨大化、花哨化、流氓化,这是没有办法的事情。但是,MSN Messenger你还没有成功(在美国打不赢AIM、Gtalk,在中国打不赢QQ),就开始这么疯狂地堕落了?腾讯虽然也在堕落,AOL早已是公认的流氓,但是你堕落的速度比他们快多了!

看来我没有理由正式升级到Messenger 9.0了。、

2007年11月28日星期三

见到了个我多年没见过的东西。。老系统的666病毒

传说中的666病毒Sevendust。。在下载回来的一个软件安装程序中。。。Orz了。感染了我一大堆老软件。唉。这东西也许现在都很难看到了。
病毒的来源好像是一个Stuffit Deluxe 5.0的安装程序。
看来这几天真是撞上鬼了。


我用ResEdit剪掉了那个病毒的MDEF资源(ID 666),希望不要还有残留。。

Update 11.29: 这个病毒不仅仅是那个MDEF资源和扩展,还包括一个System里的INIT和程序中被修改的MENU资源。最后我不得不找了个小的专杀程序Agax,才彻底搞定。

2007年11月15日星期四

这可是真正最早的中文Mac系统。。。

图片:

图片:

很久以前就收到的(1988年版)系统CH-1.2,繁体系统TA-1.2。只不过今天才找到合适的工具把它弄成模拟器可用的格式。
安装方法其实很简单,别看第一张盘启动都是乱码,但只要把系统文件夹(看图标能看出来)拖到其它空盘上,把disk2、disk3里图标是“汉”的字体文件拖到那个系统文件夹里,可用的系统就build出来了。

2007年11月6日星期二

(Windows)想用iTunes 7.5?不想装新版本Quicktime?这样就行。

在苹果官方论坛上,许多人都发现了Quicktime 7.2及以上版本在部分nVidia 8系列显示卡的新版驱动下存在严重兼容问题(Quicktime播放器花屏甚至直接出现缓冲区溢出而出错退出)、对某些主板的SATA RAID的兼容问题等严重问题。想用iPhone?想用新一代iPod系列?必须用iTunes7.4以上。但是用7.4,一般的安装方式都会自动安装上QT7.2,导致不兼容的系统配置下当场出现兼容性问题(如iTunes打开之后自动关闭甚至导致蓝屏等等)。今天iTunes 7.5出来,qt升级到了7.3,但是据我从苹果官方论坛找到的一些报告来看(如http://discussions.apple.com/thread.jspa?threadID=1221598&tstart=0、http://discussions.apple.com/thread.jspa?threadID=1222039&tstart=0、),这个新版本并不是十分完美,仍然在很多系统配置下出现了严重问题。
我虽然没有任何新一代iPod和iPhone,但也想先试试这个新版本的iTunes。为了测试,我在下完7.5安装程序这个50多兆的怪物之后,准备做点小小的tweak。
我原使用的iTunes 是版本7.2,Quicktime版本是7.1.6。从http://www.apple.com/support/downloads/quicktime716forwindows.html下载Quicktime 7.1.6的独立安装包,用WinRAR解压缩出其中的Quicktime.MSI,备用。
运行iTunes安装程序,直到出现第一个画面。此时,在资源管理器中进入当前用户的临时目录(可直接输入%temp%进入),找到一个形式如ixp000.tmp的目录(iTunes安装包为Windows Installer的IExpress自解压包,%temp%\ixpxxx.tmp是其默认解压到的目录)。进入它,你就能看到Quicktime.msi(Quicktime7.3)、iTunes.msi、Apple Mobile Device.msi(iPhone和iPod touch支持)、Apple software update.msi等几个MSI安装包。现在你应该想到了,把Quicktime.msi替换成刚才备用的那个7.1.6的,就能实现目的——装上itunes 7.5 而不装Quicktime 7.3 的目的。(当然前提是你的老Quicktime已经是7.1.6,不然独立安装包和集成安装包之间的区别,我还不知道怎么对付呢。如果已经是7.1.6,Windows Installer根本不会继续运行7.1.6的安装脚本。)我这样测试,当然取得了成功。
Photo Sharing and Video Hosting at Photobucket
其实iTunes因为是使用一种兼容型的Objective C编译器编译,因此体积确实偏大。但是可以通过移除一些不需要的语言资源来达到减小体积的目的。这些语言资源文件在C:\Program Files\iTunes\iTunes.Resources及几个类似形式的目录中,移除其中除en.lproj(英文)、zh-CN.lproj(简体中文)、ja.lproj(日本语)之外不用的语言即可。这样,几乎可以减少iTunes目录的一半体积(30多兆啊)。当然因为Windows Installer的那个自效验,原来Windows Installer建立的快捷方式就不要再用了,不然运行就会试图把这些语言文件修复回来。。
如果不需要支持iPhone或者iPod touch,也可以在“添加/删除程序”里把Apple Mobile Device删除(10多M),不会影响iTunes 7.5的正常运行和其它各种iPod的使用。你可以看到,我已经删除了。

2007年11月5日星期一

对模拟器最强的挑战:PC98用 Windows 95

Windows 95是一个不属于PC98的年代的OS。但是后期的NEC确实让它能够运行在PC9821上。然而,让它在模拟器上运行仍然几乎是个不可能的任务。
我经过多次实验,在Anex86+Anexx21 v2.78上最终将其运行成功。
最初我安装后无法启动,将DIPSW2-8(GDC频率)设置为开(5MHz),进入安全模式后将显示模式修改为640*480*256色,重启后启动成功。
Photo Sharing and Video Hosting at Photobucket
Photo Sharing and Video Hosting at Photobucket
启动成功。因为Anex86的bug(扩展内存不能超过14M)整个系统的内存都过少,而且由于9821GDC模拟效率超低,并且Anex86的SASI控制器根本不被Windows95支持(只能使用MS-DOS兼容方式),导致整个系统运行速度很慢。
Photo Sharing and Video Hosting at Photobucket
Photo Sharing and Video Hosting at Photobucket
Photo Sharing and Video Hosting at Photobucket

2007年10月31日星期三

Youtube 解除

10月31日 19点。
Youtube又能直连了。
看来这是第一个被解除双层墙封锁的外站,看来我那预言果真有效。很多洋人上网唯一乐趣也就是youtube了,封了明年狗林匹克就会挨批评了。但是这绝对不是上次封yahoo那样看上去纯属错误,而是故意所为 (挨打原因是第十七件大事或是某著名活佛领某奖,这不明)
当然想在搜索结果中翻页,还是不可能。

2007年10月25日星期四

瑞芯微PlayFX到底是不是M$的技术?

对于这个所谓“微软PlayFX音效”我一直觉得很奇怪。今天我上洋网一搜索,觉得越来越奇怪了。
首先,Microsoft.com首页上搜索,居然完全找不到任何关于此项技术的结果!难道这技术在中国国内公开称之为微软技术,在国外就是某某商业秘密云云了?为什么这个PlayFX,M$只license给rockchip这样异军突起的新SoC公司,而不放在自己的Zune上呢?
Photo Sharing and Video Hosting at Photobucket
上英文Google搜索,前三页基本都是关于某种JWC(国内的所谓“京华”)MP4使用了此项技术的结果,还有一些不相干的用户名。到了第三页以后,铺天盖地的全是中文的和使用了此rockchip芯片相关的MP3的广告文和相关评测,没有找到提到这种技术的真正细节的文章。把搜索范围限制在英文网页,搜索结果少了大概95%,而且越往后翻页结果越不相关,基本上找不到什么关于音效增强技术的搜索结果。
Photo Sharing and Video Hosting at Photobucket
Photo Sharing and Video Hosting at Photobucket
Photo Sharing and Video Hosting at Photobucket
难道rockchip和M$有某种秘密关系?总之我搞不懂微软为什么只给rockchip这种技术。又或是这纯粹是rockchip拉着微软大旗、Vista来吸引眼球?那可就没人知道了。

2007年10月23日星期二

紧急报告:blogspot再次遭到厄运

10月23日,下午4点。
C:\mplayer>tracert yksoft1.blogspot.com

Tracing route to blogspot.l.google.com [72.14.207.191]
over a maximum of 30 hops:

1 12 ms 19 ms 16 ms *.*.*.*
2 1 ms 1 ms 1 ms 10.0.0.5
3 * * * Request timed out.
4 5 1 ms 1 ms 1 ms 222.247.29.109
6 1 ms 1 ms 1 ms 61.187.255.25
7 1 ms 1 ms 1 ms 61.137.0.53
8 * 6 ms 6 ms 202.97.42.209
9 * * * Request timed out.
10 * * * Request timed out.
11 * * * Request timed out.
12 * * * Request timed out.
13 * * * Request timed out.
14 * * * Request timed out.
15 * * * Request timed out.
16 * * * Request timed out.
17 * * * Request timed out.
18 * * * Request timed out.
19 * * * Request timed out.
20 ^C
看来好日子不会长久。某大会结束后,上代势力仍然很强大,当然在这个和谐大国不管什么势力在台上,都没法把这堵7年(从geocities开始是9年)的墙给自己拆毁。民轮组织,还有能够发出不同声音的地方,想上者自然能上,但总会有障碍。

2007年10月20日星期六

Windows Vista UAC的一处严重的愚蠢设计(之二)

为了搞清楚是什么程序或者服务造成这个问题,我打开了我的两个工具:IceSword和ProcessMonitor(这两个经常手工杀毒的肯定至少用过)。

先开IceSword,选中监视进线程创建,运行那个问题安装包。很快我就发现,有一个svchost进程和一个叫consent.exe的进程异常活跃。

(注意其中那个lsm.exe不是特殊程序而是相当于XP/2003的winlogon.exe和部分lsass功能的程序)。

consent.exe是在复制文件一段时间后才真正运行的。如果在它出现到UAC窗口出现之间的一段时间把这个进程结束掉,什么错误都不会发生,而那个临时文件已经消失了。为了继续调查,我设置了几下ProcessMonitor的规则。

证明那个服务在疯狂读取原文件并复制到%windir%\temp下,consent只是读那个临时文件而已。知道了那个svchost.exe的pid,也就容易弄清楚那个服务到底是何方神圣了。很快就通过IceSword查找到这个svchost的模块里有mmcss.dll(那个造成放声音减网速的MMCSS服务),BITS.dll(Windows Update的那个背景传输服务)等等东西,看上去都是属于那netsvcs组。进一步查看,反复尝试对这个组的各服务进行操作,发现有一个怎么也结束不掉(无响应)的服务──AppInfo。这是这个服务的说明:

辅助管理权限?和UAC的功能一样!难道是它?因为这个服务结束不掉(不管是用MMC,用net stop还是sc stop都无响应),只好先将其设置为禁用,再结束掉它的母svchost.exe。

再次运行那个安装包,结果……

果然。现在这个服务无法启动,任何要求UAC提升权限的东西都无法启动了,那个临时文件也根本没有被创建。但是为什么要求吞食硬盘空间的却是这个作为UAC功能之核心的服务呢?

我可以粗略分析出UAC对于一个安装包/自解压EXE文件是如何工作的:

(1)Win32 API Winexec函数运行该程序

(2)检测安装包的文件名和属性中的信息,发现一些特征如关键词"setup""install"一类或者在应用程序兼容性数据库(我目前发现它存在在%windir%\apppatch下的三个.sdb文件中)发现相关项或者在应用程序的内嵌/外挂manifest中发现特殊要求(如icesword.exe)

(3)Appinfo服务复制这个文件到%windir%\temp下

(4)consent程序检验这个临时文件的数字签名等信息,负责弹出UAC确认窗口

(5)如果选允许,consent以自身的高权限运行原.exe文件并退出

(6)appinfo服务检测到consent退出,删除临时文件

用伪代码可以这么描述

WinExec(string filename) /*这里的filename指完整路径名*/

{

bool issecure;

issecure=SecCheck(filename));

if(!issecure)

{

UAC(filename);

return 0;

} /*(2)*/

execFile(filename);

}

UAC(string filename)

{

string tempfilename;

string consentline="consent.exe -v origfile= ";

strcat(tempfilename, Getenvironmentstrings("Windir"));

strcat(tempfilename, "\Temp");

strcat(tempfilename, tempNamegenerate(GetNamefromFullpath(filename)));/*生成临时文件的完整路径名*/

Copyfile(filename, tempfilename); /*(3)*/

strcat(consentline, filename);

strcat(consentline, " tempfile= ");

strcat(consentline, tempfilename);

execFile(consentline, suspendwhenrunning); /*(4)(5)*/

deleteFile(tempfilename);/*(6)*/

}

我发现这个问题,就是发生在第二步。第二步失败后并没有跳到第6步。微软要做个权宜之计的修正,只需要把

Copyfile(filename, tempfilename); 这里改成if(!Copyfile(filename, tempfilename)){deleteFile(tempfilename);return 0;}就没问题了;不过为什么一定要复制文件到系统目录呢?

Windows Vista UAC的一处严重的愚蠢设计

你有见过验证一个可执行文件的数字签名还需要把这个文件拷到系统盘的临时目录的OS吗?开了UAC的Windows Vista就是一个!

今天试图在Vista下运行一个500多M的大安装包,结果系统盘(F区)空间只有300多M。结果,运行了之后硬盘响了半天,愣是没看到那可爱又可恨的UAC提示,反而出来个对话框说“磁盘空间不足”。结果一看,F区没空间了。Windows Explorer自己的“磁盘清理”功能一弄,系统日志一清,各浏览器缓存一清,只清空出大概200兆空间。到处找了半天,找到了F:\Windows\temp——所谓“全局”临时目录下躺着个300多兆的临时文件。winhex打开一对比,结果此文件就是那个安装包的截断版本。

我做了个小实验。把F盘再腾出几百兆空间,再次运行那个安装程序。

硬盘又一阵稀里哗啦的狂响。20秒后,在UAC窗口闪烁在任务栏的时候,怪物也出现在了temp目录中:

切换到UAC窗口,随手点“取消”。这时候这个临时文件也突然消失了。再试了个别的安装程序(日文WPS2007 Beta安装包),结果也差不多,文件还是被复制到了F:\windows\temp下。

那如果系统盘的空间不足会怎样呢?再测试一下。。

结果。硬盘空间一下就被吃光,出现了那个“磁盘空间不足”的窗口。

具有讽刺意义的是,这个被截断的临时文件,默认还是TrustedInstaller组权限下的东西,你想删掉它,还要再过一次UAC。

这可以算是Vista的一个严重BUG了。验证数字签名,有必要放到自己的领地里来吗?当磁盘空间不足的时候,也没有进行任何的防护措施,最后出错后那临时文件也摆在那里了。

2007年10月19日星期五

10月19日晚 Spaces再次大混乱

10月19日 约20:00
突然发现这一晚我的Space连接超时了。起初怀疑被墙,但是使用某些国外代理软件,很多Space都仍然无法访问。我的是其一,20分钟前就算是Windows Live Writer等微软官方Space也都无法访问。我估计要么Spaces服务受到强大攻击(可能性看上去不大),或者是部分服务器处于下线状态。我使用Mobile Spaces能够正常访问我的空间和大部分无法通过主站访问的空间,但有些还是出现了“Service Unavailable”提示。
到21:00,基本上使用代理软件的访问恢复正常。
Downtime怎么选在这个时候?或是某大事的影响到了国外?不得而知了。

2007年10月18日星期四

Youtube,墙的新牺牲品


C:\Documents and Settings\yksoft1>tracert www.youtube.com
Tracing route to www.youtube.com [208.65.153.251]
over a maximum of 30 hops:

1 1 ms 3 ms 1 ms *.*.*.*
2 1 ms 1 ms 1 ms 10.0.0.5
3 * * * Request timed out.
4 5 1 ms 1 ms 1 ms 222.247.29.109
6 7 3 ms 3 ms 3 ms 61.137.0.133
8 10 ms 10 ms 10 ms 202.97.40.49
9 * * * Request timed out.
10 * * * Request timed out.
11 * * * Request timed out.
12 * * * Request timed out.
13 * * * Request timed out.
14 * * * Request timed out.
15 * ^C

当你看到第8步之后,你会认为什么呢?
202.97.40.49是在主干网上。。
只有一个原因,就是Youtube被第一层盾了。

使用另一个DNS的结果
D:\Users\Administrator>tracert www.youtube.com

通过最多 30 个跃点跟踪
到 www.youtube.com [208.65.153.253] 的路由:

1 2 ms 2 ms 2 ms *.*.*.*
2 1 ms 2 ms 2 ms 10.0.0.5
3 * * * 请求超时。
4 5 1 ms 2 ms 2 ms 222.247.29.69
6 1 ms 1 ms 1 ms 61.187.255.69
7 4 ms 4 ms 4 ms 61.137.0.229
8 11 ms 11 ms 11 ms 202.97.40.253
9 * * * 请求超时。
10 * * * 请求超时。
11 * * * 请求超时。
12 * * * 请求超时。
13 * * * 请求超时。
14 * * * 请求超时。
15 ^C
D:\Users\Administrator>

其他两个地方的结果:
Tracing route to www.youtube.com [208.65.153.251]
over a maximum of 30 hops:
1 * * * Request timed out.
2 41 ms 46 ms 31 ms 218.68.252.97
3 46 ms 46 ms 46 ms 218.68.251.161
4 42 ms 46 ms 46 ms 202.99.66.153
5 46 ms 46 ms 42 ms 219.158.5.90
6 41 ms 46 ms 46 ms 219.158.4.189
7 78 ms 73 ms 73 ms 219.158.4.190
8 219.158.3.222 reports: Destination host unreachable.
Trace complete.
Tracing route to www.youtube.com [208.65.153.253]
over a maximum of 30 hops:
1 <1 ms <1 ms 1 ms 219.239.202.1
2 6 ms 6 ms 5 ms 219.238.109.254
3 1 ms 1 ms <1 ms 219.239.249.17
4 * 1 ms 1 ms 202.99.57.49
5 5 ms 6 ms 6 ms 221.239.18.133
6 4 ms 3 ms 4 ms 221.239.7.49
7 4 ms * 4 ms 221.238.222.213
8 202.97.34.229 reports: Destination host unreachable.
Trace complete.

1 * * * Request timed out.
2 <1 ms <1 ms <1 ms 59.151.56.225
3 114 ms 69 ms 65 ms 59.151.58.77
4 16 ms 18 ms 29 ms 59.151.58.5
5 56 ms 76 ms 61 ms 211.151.224.75
6 18 ms 13 ms 22 ms 211.151.224.17
7 13 ms 4 ms 5 ms 219.142.8.25
8 39 ms 25 ms 18 ms bj141-130-113.bjtelecom.net [219.141.130.113]
9 62 ms 61 ms 48 ms 202.97.37.26
10 40 ms 32 ms 39 ms 218.105.4.158
11 * * * Request timed out.
12 * * * Request timed out.
13 * * * Request timed out.
14 * * * Request timed out.
15 * * * Request timed out.
16 * * * Request timed out.
17 * * * Request timed out.
18 * * * Request timed out.
19 * * * Request timed out.
20 * * * Request timed out.
21


为什么国外网站一出中文版,就如此多灾多难呢?难道是blogger的暂时解除换来的是youtube的Orz呢?明年狗林匹克的时候大量洋人要来,youtube估计他们有天大胆子都不敢继续盾。


Update 10.18 12:53: http://www.google.com/search?hl=en&q=www.youtube.com&btnG=Google+Search
哈哈。不仅是第一层,还是第二层。可惜我还不是最快的~

2007年10月12日星期五

10月12日 Spaces大乱

这一次升级就实在是离谱。K-Meleon,版式大乱:

Firefox1.5,发不出文章问题还没解决;在线编辑器把以前的内容清空,发布按钮总是灰色。

看来,微软的人目前还在拼命debug、修改Firefox版和其他浏览器版的模版和脚本。不过IE版却很缓和地更新过来了(我的IE6、IE7这几天上Space没出现过任何错误。IE优先没问题,不过让别的浏览器用户等上好几天,那还是有点过不去。

2007年10月11日星期四

据说前几天QQ服务器封锁了百度空间的网址。不知情况是否如此。

http://hi.baidu.com
据说从10月4日开始,腾讯QQ和TM中,带有这个URL的地址无法被发送出去。
绝大多数人都认为这是腾讯的反竞争手段,意图以此打击百度空间(据说还包括网易博客)。据我10月10日测试,这种情况已经不存在(至少在我使用的 QQ2007Beta1 "K"版和TM2007Beta1中)。其实我认为这并不是什么反竞争手段,而只是最近这两个国内大型blog空间被发现XSS漏洞导致有人在其上挂马并在QQ中发送带马地址,导致大量用户投诉,整个域名均被腾讯所谓的“安全”系统所屏蔽。屏蔽“2的6次方”、“Wheelgong”相关的关键词,屏蔽一些常见的挂马站地址,当然无可厚非,不过这次也许只是腾讯的安全部门忙中出错,把事情搞大了。
另外,似乎Windows Live Spaces的代码在Mozilla1.8.0下又出错了。发不出文章。唉。

我打开SeaMonkey 2.0a1,哈哈,编辑器没了~但是文章总算能发出去了。
打开Firefox 2.0(Mozilla 1.8.1)没问题。难道M$真这么懒惰?
M$啊M$。你只认Firefox,不认Gecko(什么SeaMonkey、Camino、K-Meleon,Spaces都会以那套默认framework代码输出(还有为IE和Firefox特别准备的两套),该当何罪?

2007年10月7日星期日

Quicktime的鸡肋功能:外挂音色库

由于国内关于QuickTime的资料很少,我直到最近才发现QuickTime的这个功能。但是实际运用状况却非常不理想。
使用的具体方法很简单(Windows下):把.sf2格式的音色库复制到Program Files\Quicktime\QTSystem(版本7)或者Windows\System32\QTSystem(版本4-版本6)。(Mac下复制到Library/Audio/Sounds/Banks下)然后打开QuickTime偏好设置,在“音乐合成器”中就应该能看到音色库的名称。选中它,就能够加载此音色库用于Quicktime合成器。

但是据我的测试,我发现实用性不高。最初的问题是这个合成器实在太老、自身性能就很低(发音数、效果);而且它只能真正支持全部GM音色的音色库,GS的音色库根本不能完善的支持,甚至会导致很多GM音色出现问题;效率不高,70多兆的库就能让它在Core Duo T2300下不能正常实时合成;新版本的sf2格式完全不支持;当然还有Quicktime Windows多年改不了的Player硬编码为22KHz输出的毛病,只能导出或者用iTunes来听。
当然,QuickTime至少是可以免费合法使用的东西。不要对它要求很高

2007年10月4日星期四

在Windows Vista 系统使用软波表软件 VSC-88 v3.23的办法

当初我在RC2时就测试了Roland Virtual SoundCanvas 3.23这个著名但古老的软波表软件,但是当时它安装后无法正常运行。而且我在Vista系统中也有一点重要发现,那就是在声音控制面板中找不到和MIDI有关的任何选项!难道微软认为他们从Win3.1时代就支持的MCI MIDI已经彻底过时?所有用MIDI的人都去用支持DXi、VSTi的软件了?至于Windows自己的那个GS合成器,音色库win98SE开始就万年不变,不能完整支持GM和SC-88的扩展,很多老MIDI的游戏都会出现或大或小的问题。
不过看了这篇文章http://www.pp-express.info/Vista_MIDI/vista_midi.htm之后,我真是茅塞顿开。原来在Vista上安装调试VSC竟然是这么简单!因为很多人不懂日文,我把其中的步骤简单解释一下。
当然,最基本的要求是你不能使用64位OS!

1、关闭UAC(不用解释怎么关闭了吧),将VSC(需要是版本3.2以上)的安装程序设置为Windows XP SP2兼容模式(这点也不用解释了吧。。)
2、运行安装程序,在选择安装目录时,千万不要选择默认目录(这可能是整个问题的最大根源!),应该将其安装在一个User组就具有完全读写权限的目录中。
3、重新启动系统。如果没有出现错误窗口,任务栏中出现VSC图标,安装就是正常的。双击VSC图标,随意用自带播放器播放几个MIDI文件,进入控制面板对VSC进行设置,设备建议不使用DirectSound(使用DirectSound会有很大的延迟),第一个选项卡的延迟设定尽量调小(能用Vista的机器把这个调低也没关系了)。
4、打开UAC,重新启动。如果此时启动后出现错误提示,那么前面肯定有步骤不对。如果正常,此时应该重新做第三步设置(UAC状态下,程序写入的注册表位置是虚拟化的)。
5、此时在可以自己选择MIDI输出的各应用程序中,VSC应该已经可以正常工作了。如果一直无法运行,甚至出现蓝屏、死机等严重错误现象,那么就可能是硬件驱动不兼容,这种情况没法解决(Sigmatel HD Audio集成声卡、AMD双核笔记本平台都可能与这个软波表不兼容)。
6、但是此时在使用系统默认MIDI输出的程序(如WMP、Falcom的游戏)中,系统仍然会调用系统自带MIDI。此时需要通过修改注册表来修改默认MIDI输出,但这样明显过于麻烦。有些人已经为解决这个问题专门写了控制面板小程序。我使用的是Putzlowitschs Vista MIDI-Mapper(来自http://putzlowitsch.de/2007/08/07/sichtwechsel/)。它可以在系统自带MIDI和VSC之间切换默认的MIDI输出。
这是最后的结果:
Photo Sharing and Video Hosting at Photobucket
最后要提一点,无论如何设置,VSC for MCI是一个古董级的程序(2001年最后更新),所以我不保证它在现代的机器上的可用性。

2007年10月1日星期一

是blogger换服务器ISP了,还是已经进了城门了?

首先庆祝一下本国国庆日。

今天我的一个空间(http://yksoft1.blogspot.com/)竟然可以直接连接通,而不是和以前一样连接超时。
在这个急需强大的和谐力量的时段(第十七件大事临近、离某和谐盛会只有11个月不到),怎么可能轻易打开城门放入这条怪兽呢?估计重新关门打狗、把它踢出墙外只是时间问题。

Update 10月2日上午11点:果然就和上次八一解封Wiki一样。放一天风。这就是网络为政策服务的突出表现。,

2007年9月28日星期五

Safari for Windows+NightlyWebkit r25781

我把WebKit继续更新到了WebKit-SVN-r25781,发现这一下各种中文显示都已经十分正常(包括所有的汉字字号!)。而且切换文字内码也可以工作(至少对日文ShiftJIS切换没有出现问题了。
我觉得这东西也许下个月就会真正彻底和Mac OS X 10.5一起正式出现。到时候,Firefox就又出现了一个大对手~哈哈。。。
苹果啊苹果,你虽然开始腐烂(与AT&T结盟限制iPhone等等事件),但是某些地方还是不错的。
可惜的是,Crash可是仍然多多。


User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN) AppleWebKit/523.6.1+ (KHTML, like Gecko) Version/3.0.3 Safari/522.15.5


我也说一下Firefox 扩展和插件的区别

http://www.cnbeta.com/articles/40007.htm
这篇文章提到了在Firefox/Mozilla系浏览器中所谓扩展(extensions)和插件(plugins)的区别。
其实Firefox(Mozilla)扩展和插件在各方面都是不一样的,具有完全不同的用途和存在形式。
首先Mozilla的所谓“插件”,具有非常长的历史。它使用一种来自Netscape时代的古老插件API——NPAPI(Netscape Plugin Application Programming Interface),最初是Adobe的Acrobat部门和Netscape合作,为了在Netscape内显示PDF文件而开发出来的一种插件系统。最初它与浏览器的交互必须有Java的支持,之后则使用自己的所谓跨平台的XPCOM API模型。这种插件系统并非跨平台,每个平台的文件格式都有所不同。(参考http://developer.mozilla.org/en/docs/Gecko_Plugin_API_Reference:Plug-in_Development_Overview)比如Flash插件,Windows平台下文件名为NPSWF32.dll,是一个Win32 DLL;Mac OS 9下文件名为Flash Player NP-PPC,也是一个动态链接库类型的文件(OS X下文件名类似,但代码部分格式为Mach-O);Linux下名为libflashplayer.so和flashplayer.xpt,是所谓的共享对象文件,等等。NPAPI经过长期修正,并由Mozilla牵头增加了新的npruntime脚本API,现在已经相当成熟,现在除了Windows平台上的IE之外几乎所有浏览器(所有Mozilla/Netscape系浏览器、Opera、Safari、Konqueror等)都使用这种插件架构(IE在5.5SP2以前也曾经通过plugin.ocx ActiveX提供过对NPAPI插件的支持,后因“安全原因”废止)。它是一种纯粹的二进制可执行插件,通常是为了支持网页中出现的<object>和<embed>标签中定义的对象而存在,不会增加浏览器自身的任何功能。而且由于他们的运行权限和浏览器本身相同,因此一旦出错,就可以将浏览器拖死(比如Quicktime for Windows经常导致Firefox非法操作之类常见问题)。在Mozilla系列浏览器中,可以通过输入about:plugins查看所有已经启用的插件信息。

而Firefox及一切Mozilla程序的所谓扩展,和插件的概念大不一样。Mozilla扩展并不是真正的本地代码,而只是使用JavaScript语言编制,使用和各主要Mozilla程序一样的所谓XUL(一种基于XML的用户界面脚本语言)编制界面,通过XPCOM的XPConnect API与浏览器实现交互。这样使得它具有相当高的跨平台可用性,而且因为它完全在浏览器的JavaScript引擎中运行,使得浏览器能够控制他们的行为,减少扩展出错导致整个浏览器出错的可能性。对XUL的依赖使得它只被Mozilla系浏览器支持,在XUL支持不完全的部分此类浏览器(如K-Meleon)中得不到完整的支持。当然,XUL也是个可移植的平台,甚至有XULRunner这类独立的扩展运行环境的存在。通常在Mozilla系浏览器中,扩展能做到的事情非常多,能够显示和控制自己和整个浏览器的用户界面,可以直接使用浏览器的功能实现自身与网络的通讯、可以通过XPCOM对浏览器的渲染引擎进行操作,其用途远远比插件宽泛。扩展自身是.xpi安装包,包含所有组件文件和安装脚本,安装后一般不是单一的文件。

这两类插件在能力上都无法真正和ActiveX相比,后者在Windows中神通广大,作用范围遍及整个Win32子系统,而对于前者,插件可以执行浏览器以外的代码,扩展不能对运行环境外部造成除了浏览器本身功能之外的其它影响。目前恶意的NPAPI插件数量极少,而扩展(Firefox中)目前基本上都是Mozilla的官方站点提供下载,几乎不可能出现恶意扩展;而大量的ActiveX控件却是所谓的“流氓软件”。

2007年9月26日星期三

对付微软强制要求升级Messenger 7.x到8.1的办法

为了一个在中国的窄带网络环境下几乎不存在真正影响(视频聊天引擎,要经过美国微软的服务器)的漏洞,微软.NET Messenging Service部门使出了一招强招——强制升级。所有在Windows 2000下运行MSN7.0的用户都要升级到刚更新的7.0.078x(具体版本记不得了);Windows XP以上的用户不论是7.0、7.5、8.0都被要求升级到8.1。但是现在已经出现了两种解决这种状况的办法。
(如图)
Photo Sharing and Video Hosting at Photobucket Photo Sharing and Video Hosting at Photobucket
Messenger 8加入了一个鸡肋功能“共享文件夹”,文件大小加了好几兆,内存资源占用大增;所以很多人一直使用7版本。7版本的协议和8版本实际上没有本质性的变化,这使破解成为可能。下面提供两个办法。
1、使用Win2000兼容模式(适合7.5)
把msnmsgr.exe属性中的兼容性设置改成Windows 2000(Windows 98/Me会导致出错)
如图:
Photo Sharing and Video Hosting at Photobucket
2、修改exe文件(适合7.0、7.5、8.0所有版本)
其实这个办法相当简单,因为MSN在登录时完全不对自身进行完整性验证,且Messenger直接把自己EXE资源里的版本号发给.NET Passport的服务器。因此,打开任何一个可以修改EXE资源的工具,找到Version资源,把所有和7.0/7.5相关的项全部修改成8.1.0178,即完成修改过程。经测试对8.0同样有效。

修改过后发现,msnmsgr.exe在其属性下的版本号变成了8.1,
Photo Sharing and Video Hosting at Photobucket
而且启动后能成功登录(开不开兼容模式都是一样),而在软件的帮助->关于下,显示的版本也是8.1。
Photo Sharing and Video Hosting at Photobucket
果然这方面微软不如腾讯,腾讯QQ传到服务器的版本信息是个两个字节的字符串的Hash,存在qqinfo.dat内,QQ.exe、LoginCtrl.dll不仅互相验证,也验证这个Hash,传到服务器的也是这个Hash;MSN?难道版本验证仅仅是验证EXE的信息?
总之到此,MSN7.0/7.5/8.0不能登录的问题已经得到解决。
PS:哈哈,我把7.5改成9.0.1457这个M$内部都没有的胡编版本号,居然能直接登录。。。不知微软管理员看到有什么感想
Photo Sharing and Video Hosting at Photobucket
UPDATE:果然那个破补丁只是改一下几个资源文件罢了。我还能用它作出独一无二的MSN版本呢~(MSN没有任何自我校验机能,数字签名坏了都不提示~

2007年9月22日星期六

Falcom 老游戏  太陽の神殿 アステカ][ 简易攻略

菜单操作方式:空格确认,之后使用道具则需要再按一次空格。确认应使用回车键。
先到本屏幕下方的尼僧院,取走中间老人像上的胸饰(平时调查这个道具可以看此时的月圆月缺状况,以后有三次会用到)
然后向上一屏幕,进入高僧之墓(左边的金字塔形建筑),移动右边的墙壁打开新入口;向右移动,调查棺材盖,取走上面的马赛克块,棺材盖自动打开,再取走遗体上的单眼面具。向左、向后离开此地。向右一屏幕,再向上一屏幕。进入左上角的Castilio,向前移动——看到墙上的缺口了?使用马赛克块,房间自动变成宝物库。移动黄金山得到红宝珠;调查石箱取走皮袋(非必须道具)、调查靠右后方的某坛子得到小杖;之后应当取走除了“金之台座”外的所有可以取走的东西(银之香炉(非必须)、大药罐、小药罐、浅底罐、多色瓶)。向后、向后,离开此处。进入Castilio右上方的战士神殿,取走左边石像上的银宝珠,取走豹像上的青宝珠——此时豹会生体化,后退,离开战士神殿再重新进入。豹像消失,调查墙上的小洞,使用小杖将里面的小铁钥匙吸出来。向下一屏幕,到湖(南之泉)旁边的建筑旁边,进入。洗(水龙头图标)从Castilio取得的“黄金之镜”,会看到湖内有东西,取走得“黄金之笛”。将“黄金之笛”与游戏开始就有的“创可贴”组合(动作图标是两个东西插在一起那个),补上破损处。回到战士神殿,等待(时钟图标)几次(准确的是等到胸饰上显示新月时),豹就会出现。使用“黄金之笛”,豹变回原样,取走青宝珠。离开战士神殿,回到游戏开始处,进入屏幕上方那个圆形建筑。将银宝珠放置在台座上,使用黄金之笛,银宝珠就会发光。离开此建筑“天文台”,回到Castilio和战士神殿所在地图,到战士神殿右侧,进入“千柱之间”。调查被光照亮的柱子,破坏(锤子砸的图标)那柱子前的地面,取走“金之宝珠”。返回天文台,取下银宝珠,将刚得到的金宝珠放置台座上,再次使用黄金之笛。再一次去千柱之间调查光照到的柱子,破坏地面得到“银之头像”。去Castilio,进入宝物库,取走“金之台座”,并把银之头像放置于无头石雕上,打开通道——但现在进去也没用。再次回到天文台,取下金宝珠,将金之台座放到台座上,再放上金宝珠;不要马上使用“黄金之笛”,而应该等待几次,直到胸饰显示为满月再使用。再一次去千柱之间拿到“金之头像”。
去球戏场(高僧之墓向上一屏幕)。先将单眼面具和红宝珠组合,再右进一格到有齿轮的房间,前进一格,使用单眼面具,取走墙上出现的青色砖块,此时应当后退,到齿轮房间取走墙上的齿轮限位器,前面道路被封锁,后退,离开球戏场。去Castilio,在入口使用青色砖块打开地下室,向下进入,使用齿轮限位器,移动齿轮边的手柄。然后依次取走手柄和齿轮限位器,向上,取走青色砖块,离开Castilio。回到球戏场,在齿轮房间安装上齿轮限位器和手柄,移动手柄打开通路。离开球戏场,找到生贄之泉(球戏场向左两个屏幕、向上三个屏幕)——此时因为在Castilio的事件,水已经消失。向下,移动右边的石像,打开门,前进,取走银钥匙。向左,发现自己在球戏场,离开之。去高僧之墓,破坏当初在Castilio得到那个多色的瓶子,得到水晶钥匙;得到单眼面具的房间,移动棺材中的遗体,发现钥匙孔,插入银钥匙,再移动棺材,发现密道。向下移动,(先要调查一下)使用黄金之镜,发现出口;调查棺材,使用水晶钥匙,取走遗体上的双眼面具。向后移动,从出口移动到Castilio,向上,向后,向后,离开Castilio。
再次去球戏场,将双眼面具与红宝珠组合,再与青宝珠组合;向右、向前、向前,使用双眼面具,看到白砖块,不要取走而要推动(相扑那个图标)。向后、向后,向后,向前,把金头像放到无头塑像上,再向左。此时会迷路,将小杖与同样是Castilio宝物库得到的浅底罐组合,再使用浅底罐,自动来到一堵墙前。将墙破坏,使用青色砖块,向前,发现太阳神殿。等待,直到胸饰显示半月状态,使用大药罐使自己变小,进入太阳神殿,使用小铁钥匙。向后退出太阳神殿,使用小药罐变回原样,再移动太阳神殿,获得太阳钥匙。向右移动,向后,向后,在齿轮房间向左,离开球戏场——通关!
注意点:如果带着金之台座去洗金之镜,金之台座会丢失,导致废档;
没有打开Castilio宝物库房间的密道前,不要打开高僧之墓的密道,否则进入此密道就等于废档;
刚拿到青之砖块不要立马向右拿银之钥匙,这样会立即废档;
生贄之泉向下后,碰左边的石像马上废档;
不要拿走白砖块,否则这是通关前的最后废档点;
不要把两个头像的顺序放错,否则也是立即废档。

银之香炉和皮袋的作用:在生贄之泉旁边有一处地方没有森林,进入此处可发现神殿迹,向前,摆放上香炉,使用皮袋,离开此遗迹发现BGM变化,此时抓紧时间到地图上剩下几处可以调查但平常去只是废墙的地点,就能看到壁画出现,其中是关于整个游戏的一些提示。
部分地图提示
以游戏开始点(天文台、尼僧院)为原点建立直角坐标系,一屏幕为单位,则(0,1)为高僧之墓,(0,2)为球戏场,(1,1)为南之泉,(1,2)为Castilio、战士之神殿、千柱之间,(-2,5)为生贄之泉、神殿迹。
这篇文章限定于PC88、98、X1、FM7、Windows、SS(Falcom Classics II)版的打法,FC版和MSX2版打法有很大区别。

2007年9月13日星期四

Safari 3.0.3 windows+ WebKit r25505(25585)=正确的中文输入。

终于实现了。这样下去,Safari在Windows上的稳定,指日可待,只要苹果再优化一些UI元素,把一些错误提示修改正确,并且把部分非Unicode代码页和Unicode代码页的混合显示(目前这种情况的存在我觉得还是在于Unicode转换字体列表的问题)、代码页切换做出来,就能做成正式版了。我今天把Safari for Windows的本体升级到了版本3.0.3,升级WebKit Nightly引擎版本到r25505(9月12日版)。结果我有惊人发现,在Safari的编辑框内,微软拼音能正确使用,微软日本语IME同样能够正常使用。这不需要什么高深的hack,只需要把现有的Safari 3.0.3+WebKit组合中的WebKit直接用r25505覆盖即可。
下面是情况截图Photo Sharing and Video Hosting at Photobucket
这次的问题是,webkit启动,很多GB内码汉字字号变成方块,而直接启动Safari则看着没问题。苹果啊苹果。你还认为你是一家加利福尼亚的公司而不是跨国公司。
不过正式版出来,我马上踢飞Opera。Firefox不能丢,我要Adblock~
Update:继续更新Nightly Webkit至r25585,这下更麻烦,Space在默认字体下完全乱了。。Orz。不过cnbeta在正确字号下的的部分乱码现象没有了。
也许要稳定的代价是。。。是整个Safari的体积增大好几兆。不过苹果迟早会把它彻底完成的。
Photo Sharing and Video Hosting at Photobucket Photo Sharing and Video Hosting at Photobucket Photo Sharing and Video Hosting at Photobucket

2007年9月10日星期一

在繁體(正體)中文Win98上測試Opera 9.5 Alpha版

據說最新的Opera 9.5 Alpha (代號Kestrel)在速度上有了很大的提高,我也拉了一個下來作一下測試。在Windows XP上,它的表現相當不錯;但是在我這個測試平台──CWin98上,它不僅瘋狂佔用系統資源(暫時不提記憶體,就說系統資源,剛啟動就使資源下降到了80%,網頁內圖片多時更加),且非Unicode系統下多代碼頁Unicode網頁無法正常顯示的情況仍然存在。而最可怕的是,一旦試圖下載檔案,就會當場Crash(不過至少比某些程式在Win9x下Crash則直接拖垮系統好)。
這個系統沒有簡體中文輸入法,因此這篇短文是正體。
Photo Sharing and Video Hosting at Photobucket
Photo Sharing and Video Hosting at Photobucket

2007年9月8日星期六

测试一下Windows Live Writer

这个M$工具其实出来已经有一段时间了。我并不想让它搞乱我的注册表,搞乱我的用户目录。

因此我找了个单独安装程序,exeScoped+UniExtracted,直接运行。

运行完全没有问题,只不过读取设置慢了点。软件也不大,大概10M。不过里面的DLL数,完全可以按照功能数量比例和腾讯QQ之类东西相比。唉。文件名极其具有Cocoa风格,很可能也是个.NET作品。

这是运行截图和目录截图。

可惜上传图片还是受到该死的600*600限制。以后屏幕截图之类东西还是放到photobucket好了。

2007年9月5日星期三

评OOXML竞争ISO标准失败:得道多助失道寡助,历史规律不可抗拒!

开源社区险胜了。OOXML还是被拒绝了。某人改了首歌词来加以庆祝:
“东风吹,战鼓擂。IT世界究竟谁怕谁。不是开源怕微软,而是微软怕开源。得道多助失道寡助,历史规律不可抗拒不可抗拒。微软垄断必将灭亡,开源社区一定胜利!”
虽然我承认这歌词火药味很重,毕竟现在在Office的世界,互操作性和兼容性才是真正的目标。OOXML作为微软Office 2007的标准格式,它必定不可能成为被一切Office软件所承认:它对与Office老版本的兼容性过于侧重,还需要兼容VBA脚本,结果在OOXML标准文档中出现了无数未文档化、只在微软自己的有版权文档中才出现的参数,成为开源社区批判它的最大把柄;然后是标准文档所能实现的内容和在微软Office中能实现的内容有很多差距。至于什么瑞典贿选这样的公关问题,另当别论。不过OOXML现在问题实在太多,微软想让它成为国际标准,确实得再费一番大功夫。
其实M$ Office 97-2003文档本身已经被解析得相当透彻了。微软其实公开老格式也并非失误之举,但是这会严重影响Office2007,所以微软不可能这么做。
PS:这个Cultural革歌曲,我改成我的BGM了。可惜Firefox不能听到。。

2007年9月3日星期一

web.archive.org,被关在墙外面了还是真上不了?

这个优秀的网络历史快照服务,似乎终于倒在某墙下了。连接被重置/无法连接,tracert能通。Tor似乎也没法连上这个站。不过archive.org论坛上却有这样的留言:

http://www.archive.org/iathreads/post-view.php?id=147370
这可就真奇怪了。难道不是真被上头看中了?(不过也是迟早的事情)。

想写一篇关于国内古董下载站之一bear5.com完蛋(可能仅仅是没备案)的文章,没了这个,可真是不行啊。

2007年8月28日星期二

腾讯与腾讯软件的5个问题

这只是个想法的集合,并没有什么逻辑性。纯粹无聊而发。
这里的QQ指所有(版本代码)04、05、06系列的QQ、TM,07系列的QQ悍马和TM2008未完全公开,另当别论。
1、[QQ]程序文件充分体现模块化,但整个架构却封闭化。这个是个“历史遗留问题”了。QQ2000以来,QQ的作者为了充分体现程序的“自我包含”,什么DLL都给直接放在QQ的主目录下,从来也不把几个主要的库重写一下,把一些应当集成进基本库里的东西集成进去。结果,随着赚钱的功能越开发越多,文件数如滚雪球,越来越多。另外,还用笨办法把一些微软的可重分发DLL直接装在软件目录下,结果当年GDI+ JPEG漏洞流行的时候,虽然系统已经更新了,但只要QQ收带马图片,一样中马。但是,DLL这么多,却没有让QQ支持任何形式的插件扩展。Word、Excel有文件格式插件系统,支持OLE;Photoshop、Illustrator,插件赋予它们无限的力量;Winamp,没有插件就是个空壳。QQ呢?或许是因为DRM(防止有人盗取通讯协议),或许是因为懒得搞,总之是个全封闭的模块化架构。
2、[QQ]自从QQ能够发送图片以来,发送的(来自剪贴板的)图片永远是不能变压缩比率的JPG格式,而直接能发送的图片也仅仅限制于BMP、GIF和JPG。其实很多人使用QQ发送图片的目的并不是几个简单的表情或者照片,而是发送屏幕截图。JPEG格式具有固有缺陷,在发送纯色比例非常大的图片时会出现严重失真(尤其是纯色背景上的文字,那失真实在是非常恐怖)而且它提高压缩率的能力仅仅表现在照片之类高复杂度的图片上,对于低复杂度图片压缩效率较低。而BMP是非压缩(最多也只是简单的RLE压缩)格式,GIF只支持8位每像素。而PNG不仅具有比GIF更高的压缩率,同时和GIF一样属于无损格式,适合压缩低复杂度的图片(如屏幕截图)。如果QQ能够支持选择将图片编码成JPG或PNG格式,并且提供选择JPEG压缩比的选项,可以节省很多情况下的带宽,提高传送屏幕截图及其他图片的质量。
3、[腾讯]滥用词汇。QQ2007正式版安装器的文件名为QQ2007formal.exe,formal指的是“正式场合”那个正式,不是“正式发行”的正式!用stable(相对于alpha、beta)之类词语都比这个formal好很多。还有什么KBx补丁,腾讯的人貌似完全无视了KB是Knowledge Base的缩写,以为Windows的补丁上总有KB两个字母,KB就是补丁的意思了。貌似腾讯的支持库并没有像微软技术支持那样有十多万篇文章(都有KB打头)。腾讯的人钱多了,也许某些素养就差了。
4、[QQ]对BUG的反应速度。臭名昭著的某来自韩国的键盘加密组件,让无数Win2003用户、USB键盘用户蓝脸,腾讯照样捆绑强制安装;Vista到了Beta、RC阶段,不开管理权限建不了用户目录,开了就是蓝脸,腾讯还是没注意;Vista RTM了,腾讯似乎还有雇gunner把责任推到M$身上,直到Vista Retail之后,腾讯才放出一个QQ2007Beta1,还只是简单地检测一下系统,安装两个不同版本,Vista下装上的“K字版”0661版还不让在XP、2003用,虽然这限制一下就破掉了;后来Beta2才彻底扔掉了这个该死的组件,把键盘加密彻底改成了可选项。可和QQ2007Beta1同时期出现的TM2007Beta1,还是照样的自动试图安装这个组件。一个小小键盘保护,弄了两年才彻底解决,这段时间内,盗号马早就跑到这个键盘加密组件前面去了。
5、QQ的安装(官方版)可自定义性还是比较差。虽然那有些人不喜欢的QQ游戏、画蛇添足形同虚设的QQ医生可以不装,但是,不用Qzone的人没有权利选择不安装Qzone组件,不想QQ插入IE的人不能不装QQIEHelper,还有TM的那个虚拟打印机。。。虽然最后自己都可以想办法干掉,但是这个自定义应该在安装程序上体现。
至于蜂鸟和TM2008,一些历史遗留问题(用户目录写在程序目录下、整个程序不是Unicode的)已经基本解决(注意这个Unicode化的要求是双方都是TM2008),但是,聊天记录变成了明文XML,还不能像MSN那样不保存聊天记录。MSN的通讯本身就不是密文,但是本地的东西可以完全丢掉;TM2008还是不能不记录本地聊天记录。而且最不爽的是,TM2008的皮肤仍然不能关掉,这似曾相识的丑陋皮肤在Aero Glass下实在看着不舒服。
完了,再说又会遭到更多人(不能确定哪些是gunner)的骂了。

少量截图:Windows NT 3.51

我在我的老ThinkPad T21上安装了Connectix VPC 5.0,本来打算安装苹果Rhapsody DR2原型系统,但惨遭失败(安装第二部分卡在“初始化网络”处,无法进入安装画面)。于是找出一套NT3.51Workstation中文版,在此安装。(我以前只在老486机和Virtual PC4.0上安装成功过,在我的新CoreDuo笔记本的VPC2004、2007上从来都无法成功)。
结果安装过程异常顺利,NT3.51成功驱动了VPC5.0的显示卡、声卡和硬盘、光驱。虽然我一时不慎把卷转换成了NTFS(这样就无法再使用我VPC 玩古董系统第一助手WinImage,之后尝试挂新硬盘镜像也因为NT3.51 IDE驱动的问题导致不能启动),而且启动后Client、Server总是报网络上有重名(我使用VPC的NAT方式),但是系统运行还算正常,没有出现大问题。
也许很多人会有些奇怪,NT3.51能用最新的浏览器竟然是2004年的Mozilla 1.7(传说Opera9也可以,但我没有尝试)。当然,Mozilla系浏览器的内存占用,绝对不是1995、96年的绝大多数PC所能承受的。给 VPC 64M内存,刚启动空40多M,一开Mozilla空20M,开几个页面就只空8M了。
下面是截图。
http://i121.photobucket.com/albums/o220/yksoft1/winnt351/shot2.png

http://i121.photobucket.com/albums/o220/yksoft1/winnt351/SNAG-002.png

http://i121.photobucket.com/albums/o220/yksoft1/winnt351/SNAG-003.png

http://i121.photobucket.com/albums/o220/yksoft1/winnt351/SNAG-004.png

http://i121.photobucket.com/albums/o220/yksoft1/winnt351/SNAG-005.png

http://i121.photobucket.com/albums/o220/yksoft1/winnt351/SNAG-006.png