Danke für die Antworten.
Also ich habe es jetzt mit SHGetFolderPath() versucht, allerdings kommen folgende Fehler:
Code:
Erzeugen
[C++ Fehler] shobjidl.h(2193): E2238 Bezeichner 'FOLDERSETTINGS' mehrfach deklariert
[C++ Fehler] shobjidl.h(8095): E2238 Bezeichner 'DESKBANDINFO' mehrfach deklariert
[C++ Fehler] shlobj.h(1422): E2238 Bezeichner 'FVSHOWINFO' mehrfach deklariert
[C++ Fehler] shlobj.h(3457): E2238 Bezeichner 'SHELLFLAGSTATE' mehrfach deklariert
Mein Quellcode:
Code:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
#include "shlobj.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
char Pfad[256];
SHGetFolderPath(NULL,CSIDL_PERSONAL,NULL,0,Pfad);
Label1->Caption=String(Pfad);
}
//---------------------------------------------------------------------------
(Borland C++ Builder 6 Personal)
Ohne das Einbinden der shlobj.h werden die Funktionen nicht gefunden, d.h. die muss schon mal drin bleiben.