Pfad auslesen --> 2 unterschiedliche Ergebnisse
-
Also ich habe hier ein kleines Code Beispiel:
#include <windows.h> #include <conio.h> #include <iostream> using namespace std; int main() { char str[MAX_PATH]; DWORD dWord; GetModuleFileName(NULL,str,dWord); cout<<str; getch(); return 0; }
Nun mein Problem:
Dieser Code funktioniert einwandfrei wenn ich eine cpp Datei mit Dev-C erstelle.
Wenn ich es aber mit meinem Microsoft Visual-C kompiliere und ausführe erhalte ich so etwas ( stark verkürtzt ):╠╠╠╠╠╠╠╠╠╠╠&;
Warum ist das so und wie kann ich mir auch unter VisualC den Pfad ausgeben lassen?
mfg rendner
-
Ich vermute es liegt daran, dass das dritte Argument von GetModuleFileName die Größe von str sein muss:
MSDN schrieb:
nSize
[in] Size of the lpFilename buffer, in TCHARs.
-
Oh, hatte da gar nicht erst geguckt.
Ja jetzt funktioniert es, also ist das für VisualC anscheinend zu unsauber programmiert( ? ) aber warum nimmt der DevC solche sachen?
Danke!
mfg rendner
-
Das hat nichts mit unsauber zu tun. Eher mit Zufall. dWord war nicht initialisiert wahrscheinlich war im Fall von Dev-C irgendein grosser Wert drin und im anderen Fall 0.
Kurt
-
Dieser Thread wurde von Moderator/in AJ aus dem Forum ANSI C in das Forum DOS und Win32-Konsole verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.