2012-06-03 7 views
7

Mögliche Duplizieren:
How can i put a compiled boot sector onto a USB stick or disk?Eine Datei mit C# in "Sektor 0" schreiben?

Ich bin damit beschäftigt, einen Grundbootloader erstellen, ist es für Software, die ohne Betriebssystem ausgeführt werden muss

Ich möchte auch schreiben eine kleine Konsolen-App, die den kompilierten Bootloader auf meine SD-Karte verschiebt.

Das Problem, das ich gerade durchläuft, ist das Schreiben dieses spezifischen Bootloaders auf eine SD-Karte nach Sector0. Die SD-Karte ist in meinen SD-Kartensteckplatz auf meinem Laptop gesteckt.

Kann ich dies mithilfe einer C# -Konsolen-App erreichen? Wenn nicht, was sind meine Möglichkeiten, diesen Bootloader auf die SD-Karte zu bekommen?

Update: Der Bootloader in C geschrieben ist, würde ich die Konsole App gefällt, die den Bootloader überträgt in C#

+3

Ein Bootloader in C# !? Ich würde lieber für eine Low-Level-Assembly Loader gehen, die eine andere exe-Datei ausführen kann – GETah

+3

Nein ... Bootloader ist in c, ich möchte die App, die den Bootloader in C# –

+3

übertragen Es gibt eine andere [Frage hier] (http: //stackoverflow.com/questions/1894843/how-can-i-put-a-compiled-boot-sector-onto-a-usb-stick-or-disk) mit einer Antwort, die ein bestimmtes Dienstprogramm verwendet. – Steve

Antwort

2

Sie können eine IO-API auf niedriger Ebene verwenden, um eine Datei in einen bestimmten Sektor zu schreiben. Weitere Informationen finden Sie in der Dokumentation WriteFile.

+1

Dies scheint die Antwort zu sein, durch sie lesen i siehe, dass ich mit der writefile-Methode in die Bootsektoren schreiben kann. –

1

Eine viel einfacher Idee, wäre eine Bilddatei mit dem Bootloader zu erstellen (und Optional Partitionstabelle und/oder Dateisysteme) und verwenden Sie ein externes Tool wie dd oder Image Writer, um das Bild tatsächlich auf die SD-Karte zu schreiben.