Solved

C Source code to format a hard drive

Posted on 2000-03-24
6
1,747 Views
Last Modified: 2008-03-03
I am working on a drive utility and I need a little jumpstart with the formatting routines {having a major brain cramp on the hard drive routines}.  What would be of the greatest help would be some source code in C on how to format a hard drive (by the way I am writting this utility for a Intel DOS/16-bit platform, supporting FAT12/FAT16 and eventually FAT32) .  I am already able to format a floppy drive and would now like to add hard drive capabilities to the program.

Thanks.

Michael
0
Comment
Question by:mmessuri
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
6 Comments
 
LVL 5

Expert Comment

by:Wyn
ID: 2655828
FYI(maybe not your case)
HOWTO: Call SHFormatDrive in Windows 95 and Windows NT
http://support.microsoft.com/support/kb/articles/Q173/6/88.ASP 
DeviceIoContol()
0
 

Author Comment

by:mmessuri
ID: 2656009
Thanks for the FYI; However, I am sorry to say that this app will (for now) be running only in a DOS 6.x environment.

-- Michael --
0
 

Expert Comment

by:C_Dreamer
ID: 2656175
#include <stdlib.h>

system("format c:");

There's no other way in C. If you want to go to a lower level, you'll have to use platform-specific libraries and extensions, as C itself knows nothing of such things as "drives", contenting itself with the knowledge that there's probably some kind of file system.

Formatting a hard drive is, in any case, such a complex business nowadays that you are well advised not to do this. I can think of exactly one use for the program you propose - malice.



0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 4

Accepted Solution

by:
feenix earned 995 total points
ID: 2656576
How about looking into the Linux mkdosfs sources? There you can find out how to create different FAT filesystems and more.

ftp://ftp.sunet.se/pub/multimedia/Berkeley/linux/fat32/mkdosfs-0.4.tgz
0
 

Author Comment

by:mmessuri
ID: 2656871
feenix:

Thanks for the answer.  While it was not exactly what I was looking for, it does provide enough information for me to move on past my brain block.  Besides, the multiple file system information will be helpful as I complete my disk partitioning program (it combines the fdisk program with the format program).

-- Michael --
0
 

Author Comment

by:mmessuri
ID: 2656881
C Dreamer:

Thanks for taking the time to comment; however, I was not able to put to use your suggestion as format.com is not going to be available.

BTW:

My intentions are not of malice.  The program is a hard disk partitioning application that allows for the creation / deletion and formating of the partition without the use of format.com or fdisk.exe

-- Michael --
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Preface I don't like visual development tools that are supposed to write a program for me. Even if it is Xcode and I can use Interface Builder. Yes, it is a perfect tool and has helped me a lot, mainly, in the beginning, when my programs were small…
This is a short and sweet, but (hopefully) to the point article. There seems to be some fundamental misunderstanding about the function prototype for the "main" function in C and C++, more specifically what type this function should return. I see so…
The goal of this video is to provide viewers with basic examples to understand and use pointers in the C programming language.
Video by: Grant
The goal of this video is to provide viewers with basic examples to understand and use while-loops in the C programming language.

729 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question