2010-01-21 3 views
3

Я хочу изменить букву диска. Например, я могу использовать diskpart, чтобы назначить новое письмо на диск (USB-диск или новый жесткий диск).Программно назначить новую букву существующему диску с C++

Как я могу реализовать его в C/C++?

+0

я наткнулся на [этой статье] (http://msdn.microsoft.com/en-us/library/aa364014.aspx) на MSDN. Может быть, это помогает кому-то (это именно то, что я искал). – 2010-11-14 03:37:49

+0

Проверьте следующие ссылки: http://msdn.microsoft.com/en-us/library/windows/desktop/aa364014%28v=vs.85%29.aspx (Это пример с исходным кодом, очень полезно для того, что вы хотите сделать) И ссылка на функцию «DefineDosDevice»: http://msdn.microsoft.com/en-us/library/windows/desktop/aa363904%28v=vs.85%29.aspx Надежды это помогает – MrTheV

ответ

1

Тривиальным и простой способ сделать это было бы просто раскошеливаться diskpart:

int main() { 
    int i = system("diskpart ..."); // Add args here. 
    cout << "command exited with code: " << i; 
    // ... 
} 

Он имеет /s параметр, который вы можете использовать, чтобы поставить скрипт для запуска внутри diskpart, так что вы можете просто напишите текстовый файл с соответствующими подкомандами и передайте его в diskpart с помощью вашего вызова system(...).

+0

спасибо, это мой последний выбор, если я не могу реализовать его с кодом C++. – mark

1
+0

Из документов «... каталог на другом томе (например, Y: \ MountX). Строка должна заканчиваться трейлингом обратная косая черта ('\'). " - Это отличный * плохой пример. – Ruddy

+0

Да, к счастью, этот пример не имеет значения в этом случае. – MSalters

Смежные вопросы