<?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[Gerät zu Laufwerksbuchstaben herausfinden]]></title><description><![CDATA[<p>Wie kann ich herausfinden welches Gerät sich hinter einem Laufwerksbuchstaben vebirgt? Also z.B. C:\ = HDD, A:\ = FDD, E:\ = CD-Brumm</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/240386/gerät-zu-laufwerksbuchstaben-herausfinden</link><generator>RSS for Node</generator><lastBuildDate>Mon, 06 Apr 2026 08:53:13 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/240386.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 06 May 2009 07:36:58 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Gerät zu Laufwerksbuchstaben herausfinden on Wed, 06 May 2009 07:36:58 GMT]]></title><description><![CDATA[<p>Wie kann ich herausfinden welches Gerät sich hinter einem Laufwerksbuchstaben vebirgt? Also z.B. C:\ = HDD, A:\ = FDD, E:\ = CD-Brumm</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1706225</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1706225</guid><dc:creator><![CDATA[Hanzz]]></dc:creator><pubDate>Wed, 06 May 2009 07:36:58 GMT</pubDate></item><item><title><![CDATA[Reply to Gerät zu Laufwerksbuchstaben herausfinden on Wed, 06 May 2009 08:00:09 GMT]]></title><description><![CDATA[<p>GetDriveType()<br />
<a href="http://msdn.microsoft.com/en-us/library/aa364939.aspx" rel="nofollow">http://msdn.microsoft.com/en-us/library/aa364939.aspx</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1706236</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1706236</guid><dc:creator><![CDATA[Mmacher]]></dc:creator><pubDate>Wed, 06 May 2009 08:00:09 GMT</pubDate></item><item><title><![CDATA[Reply to Gerät zu Laufwerksbuchstaben herausfinden on Thu, 07 May 2009 12:58:30 GMT]]></title><description><![CDATA[<p>Gibts auch eine Möglichkeit zwischen Floppydisk und Kartenleser zu unterscheiden? Die werden beide als DRIVE_REMOVABLE erkannt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1707130</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1707130</guid><dc:creator><![CDATA[Hanzz]]></dc:creator><pubDate>Thu, 07 May 2009 12:58:30 GMT</pubDate></item><item><title><![CDATA[Reply to Gerät zu Laufwerksbuchstaben herausfinden on Thu, 07 May 2009 13:09:33 GMT]]></title><description><![CDATA[<p>Kannst du an der Größe unterscheiden...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1707141</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1707141</guid><dc:creator><![CDATA[Machine]]></dc:creator><pubDate>Thu, 07 May 2009 13:09:33 GMT</pubDate></item><item><title><![CDATA[Reply to Gerät zu Laufwerksbuchstaben herausfinden on Thu, 07 May 2009 13:42:05 GMT]]></title><description><![CDATA[<p>GetDriveType war schon mal nicht schlecht, um die Laufwerke aber nicht anhand der Größe zu unterscheiden, kann man mit DeviceIoControl, dem STORAGE_DEVICE_DESCRIPTOR und IOCTL_STORAGE_QUERY_PROPERTY den Bus Typ herausfinden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1707163</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1707163</guid><dc:creator><![CDATA[Lordesty]]></dc:creator><pubDate>Thu, 07 May 2009 13:42:05 GMT</pubDate></item><item><title><![CDATA[Reply to Gerät zu Laufwerksbuchstaben herausfinden on Thu, 07 May 2009 16:29:31 GMT]]></title><description><![CDATA[<p>Lordesty schrieb:</p>
<blockquote>
<p>GetDriveType war schon mal nicht schlecht, um die Laufwerke aber nicht anhand der Größe zu unterscheiden, kann man mit DeviceIoControl, dem STORAGE_DEVICE_DESCRIPTOR und IOCTL_STORAGE_QUERY_PROPERTY den Bus Typ herausfinden.</p>
</blockquote>
<p>Ähh, ja danke für den Hinweis, leider weiss ich nicht wie ich die Funktion aufrufen und auswerten muss. Ist vieleicht jemand so nett und hat einen Codeschnippsel für mich?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1707271</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1707271</guid><dc:creator><![CDATA[Hanzz]]></dc:creator><pubDate>Thu, 07 May 2009 16:29:31 GMT</pubDate></item><item><title><![CDATA[Reply to Gerät zu Laufwerksbuchstaben herausfinden on Fri, 08 May 2009 06:28:35 GMT]]></title><description><![CDATA[<p>Schau mal, ob du damit zurecht kommst...</p>
<pre><code class="language-cpp">HANDLE hDevice ;
_stprintf ( szFileName, &quot;\\\\?\\%c:&quot;, cDriveLetter ) ;
hDevice = GetHandle ( szFileName ) ;

if ( hDevice == INVALID_HANDLE_VALUE )
{
	bReturnValue = FALSE ;
}
else
{
	DWORD dwOutBytes  = 0 ;

	// Eine Standardabfrage:
	STORAGE_PROPERTY_QUERY Query ;
	Query.PropertyId = StorageDeviceProperty ;
	Query.QueryType  = PropertyStandardQuery ;

	// 1.) Erforderliche Größe für STORAGE_DEVICE_DESCRIPTOR zum ermitteln des BusType herausfinden:
	STORAGE_DEVICE_DESCRIPTOR storageDeviceDescriptorTemp;
	bResultDeviceIoControl = DeviceIoControl ( hDevice,
											   IOCTL_STORAGE_QUERY_PROPERTY,
											   &amp;Query,
											   sizeof ( STORAGE_PROPERTY_QUERY ),
											   &amp;storageDeviceDescriptorTemp,
											   sizeof(storageDeviceDescriptorTemp) ,
											   &amp;dwOutBytes,
											   ( LPOVERLAPPED ) NULL ) ;
	if ( bResultDeviceIoControl == TRUE )
	{
		DWORD storageDeviceDescriptorSize = ( ( PSTORAGE_DESCRIPTOR_HEADER ) &amp;storageDeviceDescriptorTemp )-&gt;Size ;

		// 2.) STORAGE_DEVICE_DESCRIPTOR mit richtiger Größe anlegen und BusType prüfen:
		PSTORAGE_DEVICE_DESCRIPTOR storageDeviceDescriptor = ( PSTORAGE_DEVICE_DESCRIPTOR ) new BYTE [storageDeviceDescriptorSize] ;
		storageDeviceDescriptor-&gt;Size = storageDeviceDescriptorSize ;

		DeviceIoControl ( hDevice,
							 IOCTL_STORAGE_QUERY_PROPERTY,
							 &amp;Query,
							 sizeof ( STORAGE_PROPERTY_QUERY ),
							 storageDeviceDescriptor,
							 storageDeviceDescriptor-&gt;Size ,
							 &amp;dwOutBytes,
							 ( LPOVERLAPPED ) NULL ) ;

		if( storageDeviceDescriptor-&gt;BusType == BusTypeSd )
		{
			bReturnValue = TRUE ;
		}
		else
		{
			bReturnValue = FALSE ;
		}
		delete storageDeviceDescriptor ;
	}
	else
	{
		bReturnValue = FALSE ;
	}
	CloseHandle ( hDevice ) ;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1707529</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1707529</guid><dc:creator><![CDATA[Lordesty]]></dc:creator><pubDate>Fri, 08 May 2009 06:28:35 GMT</pubDate></item><item><title><![CDATA[Reply to Gerät zu Laufwerksbuchstaben herausfinden on Fri, 08 May 2009 07:16:11 GMT]]></title><description><![CDATA[<p>Lordesty schrieb:</p>
<blockquote>
<pre><code class="language-cpp">// 2.) STORAGE_DEVICE_DESCRIPTOR mit richtiger Größe anlegen und BusType prüfen:
		PSTORAGE_DEVICE_DESCRIPTOR storageDeviceDescriptor = ( PSTORAGE_DEVICE_DESCRIPTOR ) new BYTE [storageDeviceDescriptorSize] ;
</code></pre>
</blockquote>
<p>Danke für den Codeschnippsel, ich probier das gleich mal aus.<br />
Frage: obige Zeile in C würde dann so aussehen</p>
<pre><code class="language-cpp">PSTORAGE_DEVICE_DESCRIPTOR storageDeviceDescriptor = (PSTORAGE_DEVICE_DESCRIPTOR)malloc(sizeof(BYTE) * storageDeviceDescriptorSize);
</code></pre>
<p>delete entspricht dann free soweit ich mich mit meinen beschränkten c++ Kenntnissen erinnern kann.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1707534</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1707534</guid><dc:creator><![CDATA[Hanzz]]></dc:creator><pubDate>Fri, 08 May 2009 07:16:11 GMT</pubDate></item><item><title><![CDATA[Reply to Gerät zu Laufwerksbuchstaben herausfinden on Fri, 08 May 2009 07:46:36 GMT]]></title><description><![CDATA[<p>so weit ich das mit meinen beschränkten C-Kenntnissen sagen kann, sieht das richtig aus <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1707541</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1707541</guid><dc:creator><![CDATA[Lordesty]]></dc:creator><pubDate>Fri, 08 May 2009 07:46:36 GMT</pubDate></item></channel></rss>