Problem mit PathIsDirectoryEmpty
- 
					
					
					
					
 Hallo Leutz, ich hab eine kleine Funktion geschrieben, die prüfen soll ob ein Verzeichnis leer 
 ist um dann über einen "if Zweig" andere Sachen zu machen je nachdem wie das Ergebnis der Prüfung ausgefallen ist. Dafür habe ich die Funktion PathIsDirectoryEmpty gefunden, allerdings bekomme ich beim kompilieren
 folgende Fehlermeldung:undefined reference to `_imp__PathIsDirectoryEmptyA@4'|als zusätzlichen Header habe ich shlwapi.h inkludiert. 
 Meine IDE ist CodeBlocks 13.12
 Windows 7 ProfessionalHier meine Funktion: BOOL WriteToFile() { LPCSTR Ordner = "\\Data"; const BOOL Check = PathIsDirectoryEmpty(Ordner); if(Check == TRUE) { MessageBox(NULL, "1", "2", MB_OK); return TRUE; } else { MessageBox(NULL, "3", "4", MB_OK); return TRUE; } }Was mache ich falsch? Wäre nett wenn mir jemand behilflich sein könnte, 
 hab schon die Suche und Google bemüht allerdings mit wenig erfolg.MFG 
 DeeJayExTasy
 
- 
					
					
					
					
 Du musst gegen die shlwapi.liblinken.
 Entweder in den Projekteinstellungen angeben oder, wenn du einen Compiler verwendest der Auto-Linking unterstützt (MSVC, Clang) indem du#pragma comment(lib, "shlwapi.lib")in eines deiner .cpp Files schreibst. GCC kann es (Auto-Linking) AFAIK immer noch nicht, nichtmal die Windows Ports. 
 (Falls sich da was getan hat, und das nicht mehr stimmt, bitte korrigiert mich!)
 
- 
					
					
					
					
 Tut mir leid hustbaer, ich hatte das wohl vergessen zu erwähnen, ich habe 
 die lib selbstverständlich auch gelinkt, so sieht es bei mit im Header aus:#include <shlwapi.h>//PathIsDirectoryEmpty #pragma comment (lib, "shlwapi.lib")ich bekomme trotz alle dem die Fehlermeldung, weiß auch leider nicht 
 mehr weiter, muss wohl einen anderen Weg finden um herauszukriegen
 ob mein Verzeichniss leer ist.Mfg DeeJay 
 
- 
					
					
					
					
 Passiert dies auch wenn du ein neues Projekt öffnest und es dort versuchst? Hier evtl. noch eine Lösung wie Du überprüfen kannst ob ein Ordner leer ist: 
 http://stackoverflow.com/a/1136247
 
- 
					
					
					
					
 @deejayextasy 
 Dann wird der Grund vermutlich sein dass CodeBlocks GCC verwendet, und dieser#pragma comment(lib)nicht unterstützt.
 => Bei den Linkeroptionen-lshlwapiangeben.
 
- 
					
					
					
					
 Vielen Dank für eure Hilfe, tut mir leid das ich mich erst jetzt melde, war 
 ein paar Tage nicht "da".Ja, es passiert auch wenn ich ein neues Projekt erstelle, 
 so wie es aussieht hat hustbaer recht und meine IDE kann anscheinend
 folgende Zeile nicht richtig interpretieren ->#pragma comment(lib, "shlwapi.lib")wenn ich die shlwapi direkt linke, über die Projektoptionen, funktioniert es. Also vielen Dank nochmal für eure mühe, Thema ist damit erledigt. MFG DeeJayExTasy 
 
