|||
Citrine,起源于2005年。2010年,沉睡5年的Citrine重新搬上我的桌面。
重写Citrine的初步规划,取消aspi32调用,改用Windows API函数。至于软件功能嘛?由着兴趣来,想要什么就做什么,一点一点往上加。
经过一段时间的努力,软件已有很大改观,完全API函数不仅实现原有功能(原始版功能也太简单了),还加入了一些新功能。
v0.1.0.1(2010-10-16)
费了老大劲琢磨Windows API,翻了好几遍WIN SDK,终于有点收获,调用SetupAPI已实现的包括尚未完善的功能:
探索和发现:虚拟机真的很好用,在没有SCSI控制器的本本上完成了编程和SCSI控制器的扫描测试。
这是软件界面图,可以看出和原始版的不同。
v0.1.0.3(2010-10-22)
工具栏图标改成32*32,界面看上去稍稍漂亮了一些。多学了几招API,可以用DeviceIOControl实现更强大的功能。这个版本经测试不能读取U盘的厂家信息,继续研究中。
v0.1.0.6(2010-10-26)
调整了一下界面,缩小操作记录框,磁盘列表显示更多信息,可以读取U盘信息了。
探索和发现:执行SCSI READ(28h)读不了SAS硬盘数据,系统会返回“由于I/O设备错误,无法运行此项请求。”,原因不明。
v0.1.0.10(2010-11-16)
调整了一下界面,中间一条空白预留将来之用,固件下载功能通过基本测试,增加了SCSI操作返回信息。
v0.1.0.13(2010-12-14)
又调整了一下界面,增加了特殊功能页和硬盘配置文件,所有新功能尚在开发中。
v0.1.0.20(2010-12-24)
从软件界面看和上个版本没有多大改动,实际上一切的变化在悄悄进行。
探索和发现:IOCTL_SCSI_GET_INQUIRY_DATA在通过ATA、SCSI硬盘测试后,依然如28h命令一样没有通过SAS硬盘测试,系统返回错误信息“函数不正确。”。