2010-02-11 2 views
3

Мне нужно клонировать CF-карты (с определенным количеством пользовательских функций, исключающих использование готовых инструментов клонирования). Мне нужно правильное изображение для этого - я не могу просто скопировать все файлы. Я хотел бы написать программу для этого в C#, но я понятия не имею, с чего начать.Создание образа диска с использованием .NET

Может ли кто-нибудь указать мне базовый образец или что-то, чтобы заставить меня двигаться в правильном направлении?

+0

Это с USB-кард-ридером или адаптером IDE? В любом случае, я уверен, что вам нужно будет найти неуправляемый API. Большинство деталей оборудования абстрагируются в .Net. –

+0

С USB-кард-ридером. Я надеюсь, что есть что-то, что я могу сделать в .NET, вместо того, чтобы идти в какой-то тайный API. –

ответ

1

Cant вы используете программу, как: http://xedit.smike.ru/

В противном случае вы должны возвратиться к Win32 API вызовов, как CreateFile (для привода G, например, использовать "\ \ г:.", В качестве параметра имя файла)

Также ознакомьтесь с функциями ReadFile/WriteFile, SetFilePointer и DeviceIoControl.

1

Вы используете тот же API для чтения и записи для чтения необработанных данных из тома в Windows, который используется для обычного файла io. Разница заключается в открытом вызове.

CreateFile ("\ \ М:.", GENERIC_READ | GENERIC_WRITE, ...)

Откроет диска M: для сырого чтения и записи. Я никогда не пробовал, но вы можете уйти с передачей «\. \ M:» в качестве имени файла для одной из открытых функций на C#, это может работать. Но было бы разумнее написать хотя бы часть файла проекта в неуправляемом коде.

Для получения дополнительной информации см. Документацию CreateFile. найдите раздел

Физические диски и тома

Прямой доступ к диску или к объему ограничен. Дополнительные сведения см. В разделе «Изменения файловой системы и стека хранилища для ограничения прямого доступа к диску и прямого доступа к тому в Windows Vista и Windows Server 2008» в базе данных справки и поддержки по адресу

0

Вы бы необходимо использовать Pinvoke для вызова режима блокировки io. В чем причина, по которой вы не можете копировать файлы?

+0

Файловая система должна быть сохранена для использования в проприетарном устройстве. –

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

  • Нет связанных вопросов^_^