<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Disk via WinAPI partitionieren und formatieren]]></title><description><![CDATA[<p>Hat einer schon mal ein Proggi geschrieben, das via WinAPI eine Festplatte einrichten kann?<br />
Ich steh davor, so etwas aus einem (Windows GUI-)Setup-Programm heraus machen zu müssen.</p>
<p>Das via CreateProzess() und cmd.exe / diskpart.exe und <a href="http://format.com" rel="nofollow">format.com</a> zu erledigen geht zwar, ist aber im Ergebnis nicht schön. (kaum Kontrolle darüber, was diskpart und format wirklich machen und die DOS-Boxen ... na ja <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /> ... und die Boxen einfach verstecken ist irgendwie auch nicht DIE Lösung. )</p>
<p>WMI braucht zu viele Supportmodule und ist am Ende auch zu langsam.</p>
<p>So bin ich dann bei DeviceIOControl() hängen geblieben.<br />
Nur, das ist reichlich mühsam. Hat das schon mal einer gemacht und kann mir hilfreich den &quot;steinigen Weg&quot; etwas abkürzen?</p>
<p>Oder hat einer noch eine Idee, wie das gut und schnell erledigt werden kann?</p>
<p>.net, MFC usw. scheiden aus. Das muss direkt auf die WinAPI aufsetzen.<br />
Zielsystem ist WinXP.</p>
<p>Danke schon mal<br />
Ulli</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/239937/disk-via-winapi-partitionieren-und-formatieren</link><generator>RSS for Node</generator><lastBuildDate>Mon, 06 Apr 2026 10:13:44 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/239937.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 29 Apr 2009 16:32:44 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Disk via WinAPI partitionieren und formatieren on Wed, 29 Apr 2009 16:32:44 GMT]]></title><description><![CDATA[<p>Hat einer schon mal ein Proggi geschrieben, das via WinAPI eine Festplatte einrichten kann?<br />
Ich steh davor, so etwas aus einem (Windows GUI-)Setup-Programm heraus machen zu müssen.</p>
<p>Das via CreateProzess() und cmd.exe / diskpart.exe und <a href="http://format.com" rel="nofollow">format.com</a> zu erledigen geht zwar, ist aber im Ergebnis nicht schön. (kaum Kontrolle darüber, was diskpart und format wirklich machen und die DOS-Boxen ... na ja <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /> ... und die Boxen einfach verstecken ist irgendwie auch nicht DIE Lösung. )</p>
<p>WMI braucht zu viele Supportmodule und ist am Ende auch zu langsam.</p>
<p>So bin ich dann bei DeviceIOControl() hängen geblieben.<br />
Nur, das ist reichlich mühsam. Hat das schon mal einer gemacht und kann mir hilfreich den &quot;steinigen Weg&quot; etwas abkürzen?</p>
<p>Oder hat einer noch eine Idee, wie das gut und schnell erledigt werden kann?</p>
<p>.net, MFC usw. scheiden aus. Das muss direkt auf die WinAPI aufsetzen.<br />
Zielsystem ist WinXP.</p>
<p>Danke schon mal<br />
Ulli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1703259</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1703259</guid><dc:creator><![CDATA[Ulli]]></dc:creator><pubDate>Wed, 29 Apr 2009 16:32:44 GMT</pubDate></item><item><title><![CDATA[Reply to Disk via WinAPI partitionieren und formatieren on Wed, 29 Apr 2009 19:13:13 GMT]]></title><description><![CDATA[<p>IOCTL_DISK_CREATE_DISK / CREATE_DISK</p>
<p>IOCTL_DISK_SET_DRIVE_LAYOUT_EX / DRIVE_LAYOUT_INFORMATION_EX / PARTITION_STYLE / DRIVE_LAYOUT_INFORMATION_MBR / PARTITION_INFORMATION_EX</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1703327</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1703327</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Wed, 29 Apr 2009 19:13:13 GMT</pubDate></item><item><title><![CDATA[Reply to Disk via WinAPI partitionieren und formatieren on Wed, 29 Apr 2009 21:13:38 GMT]]></title><description><![CDATA[<p>ja, danke Jochen, so weit war ich auch schon <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
<p>Ich hab aber mittlerweile selber die Lösung gefunden: VDS</p>
<p>Gemeint sind damit nicht etwa die Leute von den Alarmanlagen oder<br />
Verband Deutscher Sprache oder etwa<br />
Verband Deutscher Sternenfreunde ... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>nein, sondern Virtual Disk Service</p>
<p>Das ist ein API innerhalb der WinAPI (ähnlich wie SetupAPI). Hatte ich die ganze Zeit schon vor der Nase. Ich war nur dem Namen und meiner Interpretation davon auf den Leim gegangen und hatte gedacht, dass das Zeugs für 'echte' virtuelle Disks da ist.<br />
Aber: weit gefehlt. Eine von Google ausgegrabene uralt Doku von Sysinternals, die bei SourceForg irgendwo vergessen worden war (kein einziger Link in dem Dokument funktionierte mehr), hat mich schliesslich auf den richtigen Weg gebracht:</p>
<p>Unter VDS (wer wohl wie auf DEN Namen gekommen ist?) hat MicroSaft Funktionen zum Partitionieren, Formatieren usw. innerhalb der WinAPI als Schicht oberhalb von DeviceIOControl() gebündelt und stellt dort Aufrufe zur Verfügung, die einem weitgehend das Rumrechnen mit Zylindern, Köpfen und Sektoren, Sektorengrößen usw. abnehmen.</p>
<p>Nebenbei: diskpart.exe ist auch &quot;nur&quot; ein CommandLineInterface zu dieser API und auch die Funktionen der GUI z.B. Explorer/Kontextmenü bei Datenträgern/Formatieren nutzen dem Vernehmen nach diese Funktionen.</p>
<p>Ich werd jetzt mal gucken, wie weit ich damit komme. Sieht aber ganz hoffnungsvoll aus.</p>
<p>/Ulli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1703383</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1703383</guid><dc:creator><![CDATA[Ulli]]></dc:creator><pubDate>Wed, 29 Apr 2009 21:13:38 GMT</pubDate></item><item><title><![CDATA[Reply to Disk via WinAPI partitionieren und formatieren on Thu, 30 Apr 2009 15:24:53 GMT]]></title><description><![CDATA[<p>Ja, VDS gibt es aber erst seit Vista / W2k3... und Dein Zielsystem war doch XP, oder?<br />
<a href="http://msdn.microsoft.com/en-us/library/bb986750" rel="nofollow">http://msdn.microsoft.com/en-us/library/bb986750</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1703682</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1703682</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Thu, 30 Apr 2009 15:24:53 GMT</pubDate></item></channel></rss>