向高手求教:如何在C++程序中判断软盘未格式化

phoenix_gao 2009-04-30 11:44:06
需要在判断出软驱中有软盘后,看软盘是不是未格式化状态,如果未格式化,执行格式化
...全文
140 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
phoenix_gao 2009-05-04
  • 打赏
  • 举报
回复
因为没有找到未格式化的软盘,所以不知道GetVolumeInformation的返回值lpVolumeSerialNumber里面是什么的情况下能表示软盘未格式化。只好先用无满意结帖。
  • 打赏
  • 举报
回复
BOOL GetVolumeInformation(
LPCTSTR lpRootPathName, // root directory
LPTSTR lpVolumeNameBuffer, // volume name buffer
DWORD nVolumeNameSize, // length of name buffer
LPDWORD lpVolumeSerialNumber, // volume serial number
LPDWORD lpMaximumComponentLength, // maximum file name length
LPDWORD lpFileSystemFlags, // file system options
LPTSTR lpFileSystemNameBuffer, // file system name buffer
DWORD nFileSystemNameSize // length of file system name buffer
);
datacodebugs 2009-04-30
  • 打赏
  • 举报
回复
1、没有mbr
2、没有分区信息(可能没有,好久没用过软盘了)
3、没有 fat 表
lingyin55 2009-04-30
  • 打赏
  • 举报
回复
lingyin55 2009-04-30
  • 打赏
  • 举报
回复
C判断软驱中是否有软盘

/*TC下*/

#include <bios.h>
#include <stdio.h>

int main(void)
{
int result;
char buffer[512];

printf("Testing to see if drive a: is ready\n");
result = biosdisk(4,0,0,0,0,1,buffer);
result &= 0x02;
(result) ? (printf("Drive A: Ready\n")) :
(printf("Drive A: Not Ready\n"));

return 0;
}
ppc_2008 2009-04-30
  • 打赏
  • 举报
回复
ding
liliangbao 2009-04-30
  • 打赏
  • 举报
回复
学习~
phoenix_gao 2009-04-30
  • 打赏
  • 举报
回复
hairetz说的函数貌似可以,但是现在手头只有1张软盘还是格式化过的,暂时还没得出结论。得出结论后,给大家分
phoenix_gao 2009-04-30
  • 打赏
  • 举报
回复
楼上各位,给的答案可不可以详细点啊,你们写的我都看不懂你们想说什么。。。。

3,881

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧