[随笔]不重复发明轮子和Vista_BCD编程

| 8 Comments | 0 TrackBacks | WebBlog Articles
近来写点小东西,需要读取 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

引用通告|TrackBacks (0)

本日志的TrackBack URL: http://easun.org/cgi-bin/mtos/tb_mt_41.pl/265.

本文相关评论|Comments (8)

又在折腾啊。。。。^0^

恩恩.最近修改修改...
虽然是内部版本...
呵呵

天使MM虾米时间用了这么怪的 Yahoo OpenID。

莫非还有外部版本?嘿嘿~~

PS:路MM and 天使MM。。。嗯嗯,俩PLMM碰面就是热闹啊~~挖哈哈~~^0^
排排坐,看MM~~~~^-^

呵呵。你又不是不明白,因为种种原因,这个东西再也没有挂到外网。但是code一直在更新,最近添加了 Vista/2008/7的支持。
由于 easunstudio 这个名字我最近又搞回来了,也许。。不排除又挂到外网。。。

PS: 看MM? 玫瑰的爱好很奇特。咳嗽。

终于给捞回来了啊,嘿嘿~~

PS:咳嗽~~这有虾米奇特的~~~
俗话说,爱美之心人皆有之嘛~~~~放着路MM天使MM这俩花见花开的PLMM不看,岂不可惜~~~望天~~~ ^0^

路mm赶快嫁给玫瑰GG吧

发表该文评论|Leave a comment

最近发表|Recent Entries

[发布]路杨OS切换工具(Easun OS Switich Utility) 2.1 正式版发布

路杨OS切换工具(Easun OS Switich Utility) 2.1 正式版 于 2010-4-25 日正式发布了。路杨OS切换工具(Easun OS Switich Utility) 介绍:    路杨OS切换工具(Easun OS Switich Utility)  是一款免费的图形界面下的多系统启动管理软件。程序支持基于 Windows BCD…

[随笔]2010杂事半年谈

从元旦到4月,貌似很久没有写东西了。网站上的 Logo 依然挂着 "元旦"的字样,叹息一句。近来比较忙,且不是加班加到4月初,也不说今年回老家过年遭遇小偷把所有证件偷窃的干干净净。这几个月发生的时期实在太多,多的简直没有办法写下来,多动症的地球,多难的华族。死者安息,生者坚强吧。随笔写下这么多东西,也算久违的 Blog 了吧。呵呵。 PS: 这两天有些时间, 路杨OS切换工具2.1(Easun OS Switich Utility) 经历N年, 终于出正式版了。。 晚点时间,写发布说明。…

[SiteLog]New Style of Easun.org

This is a SiteLog for Easun.org. 如题。 懒了。顺便找了后台的一些图片。小小更新了下 style。 新的 style 就这样了。其实没有啥大的变化,更清新了点吧。其实隐约使用此 style 快一周了。 周末正式修改完毕。做个通告吧。MT5 已经出来了。 是否升级? 是个问题。年底了。。。单位突然忙了起来,真算是世事难料的说。…