GetLogicalDriveStrings richtig benutzen
-
Hallo, da ich mir etwas unsicher bin ob dieser kleiner Code auch auf allen System läuft wollte ich ihn mal posten:
#include <stdio.h> #include <stdlib.h> #include <windows.h> int main() { char buffer[128]; int x,i; x = GetLogicalDriveStrings(128,buffer); for(i=0; i<x; i++) { printf("buffer: %s\n",&buffer[i]); i = i + 3; } return 0; }Für verbesserungen bin ich gerne offen.
-
Was ich an aus meiner Sicht kritishen Dingen ändern würde, ohne großartig was zu ändern:
Edit: Habe jetzt doch etwas mehr verändert. Das wäre also mein Vorschlag.
#include <tchar.h> #include <windows.h> #define BUFFSIZE 128 int _tmain( int argc , TCHAR *argv[] ) { TCHAR buffer[BUFFSIZE]; int x , i=0; buffer[0] = '\0' ; x = GetLogicalDriveStrings( BUFFSIZE - 1 , buffer); while( i < x && buffer[i] ) { _tprintf( _T("buffer: %s\n") , &buffer[i]); while( buffer[i] ) i++ ; i++ ; } return 0; }