无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 3998|回复: 5
打印 上一主题 下一主题

[求助] Fbinst如何获取优盘UD分区大小

  [复制链接]
跳转到指定楼层
1#
发表于 2013-5-11 10:53:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 往事亦飘 于 2013-5-11 11:32 编辑

是这样的,我做了个启动盘,想加入免格式化功能,所以要获得UD分区大小,如果用户的ud空间小于给定的大小,就要重格式化安装。

Fbinst获取优盘UD分区大小代码 不会写,从网上也没找到,请高手指点。
推荐
发表于 2013-5-11 19:22:17 | 只看该作者
嘿嘿,
fbinst %hd% info

其中的 %hd%为你的u盘在当前系统下的编码,可通过以下命令获得:
fbinst -l
通常该代码为hd1,或hd2、hd3,取决于当前系统下usb设备的数量。
例如偶的u盘执行命令:
fbinst hd1 info
可获得以下信息:
------------------------
version: 1.6
base boot sector: 63
boot code size: 4
primary data size: 16128
extended data size: 86016
debug version: no
bpb status: init
format options: --extended 86016
file list size: 896
file list used: 2
files:
......
-------------------------------------------
其中:
primary data size: 16128    #主分区 7.875M
extended data size: 86016  #拓展分区 42M
回复

使用道具 举报

推荐
 楼主| 发表于 2013-5-11 15:32:16 | 只看该作者
请问具体如何写呢
回复

使用道具 举报

推荐
发表于 2013-5-11 13:27:44 | 只看该作者
本帖最后由 不才 于 2013-5-11 13:30 编辑

嘿嘿,
fbinst %hd% info
回复

使用道具 举报

推荐
发表于 2013-5-11 12:51:57 | 只看该作者
回复

使用道具 举报

6#
 楼主| 发表于 2013-5-11 19:30:30 | 只看该作者
本帖最后由 往事亦飘 于 2013-5-11 19:38 编辑

谢谢,现在我明白了,16128   86016  取得这二个值的代码不会写,可以提示一下吗?

我是这样写的:
fb.txt 是获得的所有信息我保存到txt文件里的

fbinst hd info >fb.txt

IniFile:=ExpandConstant('{tmp}\fb.txt'); // 你的 txt 文件名
OldString:='primary data size:'; // 要找的字符串
LoadStringFromFile(IniFile,fb)
for i:= 0 to 1 do
if (Pos(OldString, fb) > 0) then
fb:=copy(fb,75,5);


这样取得了16128

这样写代码好像不好呢

这个软件的作者应加个函数直接获取这二个值就方便多了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-6-2 23:50

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表