分类 [程序人生] 的最近文章归档|Category Articles Archives

废话不说.
下载地址:  http://easun.org/ossu/download/ossu2beta091107.rar

供有兴趣的朋友试用. 话说,挣扎半天发这个.心中五味具全.

简单说明下:
1.程序目前不再读取 msdos.sys ,也就说不再检测和支持Win9x. 想在不装bootmgr的情况下操作Win9x的朋友可以在网络搜索旧版.
2.仅仅对 BCD 数据库 和 Boot.ini 操作.
3.屏障了 对 系统列表的添加/删除...
4.增加了对 MBR 的管理(不是程序本身功能,而是GUI而已)...
5.对语言支持,但是下载包中仅包含 简体中文, 英文语言包内置,在没有找到任何语言包的情况自动启用英文语言包

最后再说一句: 多系统有风险...

暂时不抓图了.
近来写点小东西,需要读取 BCD 启配置文件。
看了 MS 官方的资料,只能通过 WMI 来操作。。
WMI 的依赖性太强了,而且我这个需要在 XP 下也能正常工作(安装了多系统的XP),而 WMI的依赖环境。。。我貌似有点轻度的代码洁癖。
加上一直对.net和WMI不怎么感兴趣,所以还是继续在 XP 下用 VC6来实现吧。

研究了 BCD 的格式。根据 Kingsoft Smallfrogs文章介绍,BCD数据库其实就是标准的注册表数据格式,而且也会在Vista以上系统启动后自动加载到 HKEY_LOCAL_MACHINE\BCD00000000 下。看来可以通过读取注册表的方式获取结果。

这个时候,新问题又出现了。如果是多系统启动中的XP系统的话,BCD数据库并不会自动加载到注册表。难道又是此路不通 ?

最后发现 MS自身的工具 bcdedit.exe 在 XP (当然是BCD存在的情况) 中工作一切正常,而且 只要运行一次 bcdedit,那么,BCD数据库就会被自动加载到注册表

到此,对于读取。一切问题解决掉了。

现在,主要就是写的问题,注册表挂载后的权限默认是只读的,那么改掉权限不可靠也不通用(对于这些键值,难免会有系统保护软件和其他的系统操作把权限调整回来),那么既然"不重复发明轮子"那么写操作全部交给 MS 的小工具 bcdedit.exe 搞定。

虽然,这样一来,自己的程序难免在某些程度上沦成 bcdedit.exe 的一个GUI。但是问题解决了就好:)

随笔。胡乱记录下最近的一些问题和最后解决的思路和结果。
附上抓图(我的系统列表):
os_list.png

Qiang 的 征集演讲,这里发一次:)

大家好,
Perlchina 正在准备北京 Perl Workshop,向所有对 Perl 感兴趣的朋友免费开放, 大会定于11月8号(星期六)举行,时间为 1 天,地点在黄庄地铁站附近。 大会注册会在一个星期后开放,届时会在此向大家通知。
现在的工作是开始征集演讲。提交演讲的截至日期是 10月27号。
演讲的时间有四种:20,40,60分钟,第四种是 5 分钟的闪电演讲。闪电演讲的介绍请看 http://xrl.us/oqs8c
大会演讲没有高手,低手之分,对于第一次演讲的朋友,5 分钟快速演讲会是个锻炼的好机会。 希望大家踊跃报名,积极参与,一起来 push, unshift, slice 演讲到我们的 @talks 里。
有意演讲的朋友请在 10 月 27 号前把演讲主题和演讲简介发到 conference@perlchina.org。

这里也提供一些演讲的主题,供大家参考。

* 你的 Perl 成功故事
* 你有在别人意想不到的地方或领域使用 Perl 吗?让我们惊奇一下!
* 我是 xxx 语言程序员,但 Perl 让我完成了 xxx 语言不可以实现的功能。
* 为什么你喜欢模块 X。
* 我用 Perl 实现了 yyy, 我从中学到了 ....
* 你的公司使用 perl 吗? 讲讲 Perl 在公司里的应用。
* 讲讲如何用 Perl 解决了某个问题。
* 结合某个领域: Perl 和 垃圾邮件, Perl 和 生物学, Perl 和中文, Perl 和测试 等等。

本分类的所有文章