Windows C/C++驱动器初始化/分区/格式

Windows C/C++驱动器初始化/分区/格式,c++,windows,format,disk,disk-smart,C++,Windows,Format,Disk,Disk Smart,我正在尝试为Windows XP 64位构建一个应用程序,该应用程序能够检测系统中特定型号的驱动器,如果驱动器未初始化和格式化,则执行这些过程 我还希望能够查询和设置分区信息,包括卷标 我已经开始使用DeviceIoControl编写代码,但我还没有弄清楚如何使用该方法设置/获取分区/卷标签或格式化驱动器,我已经实现了智能访问 还有其他更容易使用的方法吗 Zac听起来像是你在找的。听起来像是你在找的。如果我这样做,我只会使用自己的代码来检测东西。我将通过diskpart和/或format命令进行

我正在尝试为Windows XP 64位构建一个应用程序,该应用程序能够检测系统中特定型号的驱动器,如果驱动器未初始化和格式化,则执行这些过程

我还希望能够查询和设置分区信息,包括卷标

我已经开始使用DeviceIoControl编写代码,但我还没有弄清楚如何使用该方法设置/获取分区/卷标签或格式化驱动器,我已经实现了智能访问

还有其他更容易使用的方法吗


Zac听起来像是你在找的。

听起来像是你在找的。

如果我这样做,我只会使用自己的代码来检测东西。我将通过diskpart和/或format命令进行分区和格式化。diskpart接受带有要执行的脚本的文件参数。

如果我这样做,我只会使用自己的代码来检测事情。我将通过diskpart和/或format命令进行分区和格式化。diskpart接受带有要执行的脚本的文件参数。

可能重复:这些都不能完全涵盖我想要实现的目标。WMI只允许查询信息,不允许创建分区和其他我想做的事情。我尽量不走包装命令行应用程序的道路,我更希望一切都是C/C++。我想如果我必须走这条路的话,diskpart可能是一个选择。可能的重复:这些都不能完全涵盖我想要实现的目标。WMI只允许查询信息,不允许创建分区和其他我想做的事情。我尽量不走包装命令行应用程序的道路,我更希望一切都是C/C++。我想如果我必须走这条路,diskpart可能是一个选项。我最终使用了WMI和DeviceIoControl与磁盘管理控制代码的组合。这看起来能够做我想做的每件事,除了目前我在C++中使用Wi32的卷格式方法有一些问题,我经常得到一个WBEMyE.SimuldIdMyPosithError错误。嗨,@ ZacShenker,你能格式化使用IOCLTLYDISKStEXDRIVEVE布局创建的新创建的分区吗?我想不出格式化新分区的方法。我最终使用了WMI和DeviceIoControl与磁盘管理控制代码的组合。这看起来能够做我想做的每件事,除了目前我在C++中使用Wi32的卷格式方法有一些问题,我经常得到一个WBEMyE.SimuldIdMyPosithError错误。嗨,@ ZacShenker,你能格式化使用IOCLTLYDISKStEXDRIVEVE布局创建的新创建的分区吗?我想不出格式化新分区的方法。