Hallo zusammen,
wollte gerade aus einer *.ini - Datei Sektion alle vorhandenen Schlüssel auslesen.
Leider funktioniert das nicht.
Ich bin auch nach Anweisung von Microsoft gefolgt:
GetPrivateProfileString function (winbase.h) - Win32 apps
Da lese ich, dass wenn man den Parameter 2 in der Funktion "GetPrivateProfileString()" mit NULL angibt, werden alle vorhandenen Schlüssel zurückgegeben.
Ist aber bei mir leider nicht so.
Mein Code:
Meine Methode:
Und der Funktionsaufruf:
Die *.ini - Datei findet ihr im anhang, gezippt.
Kann mir jemand sagen wo das Problem liegen könnte.
Vielen Dank.
Grüße von CopWorker
wollte gerade aus einer *.ini - Datei Sektion alle vorhandenen Schlüssel auslesen.
Leider funktioniert das nicht.
Ich bin auch nach Anweisung von Microsoft gefolgt:
GetPrivateProfileString function (winbase.h) - Win32 apps
Da lese ich, dass wenn man den Parameter 2 in der Funktion "GetPrivateProfileString()" mit NULL angibt, werden alle vorhandenen Schlüssel zurückgegeben.
Ist aber bei mir leider nicht so.
Mein Code:
C#:
[DllImport("kernel32.dll", EntryPoint = "GetPrivateProfileStringW", CharSet = CharSet.Unicode, SetLastError = true, ExactSpelling = true, CallingConvention = CallingConvention.StdCall)]
private static extern int GetPrivateProfileString(string lpAppName, string lpKeyName, string lpDefault, StringBuilder lpReturnedString, uint nSize, string lpFileName);
C#:
public int GetMyPrivateProfileString(string lpAppName, string lpKeyName, string lpDefault, ref string strBuffer, string lpFileName)
{
int iRet = 0;
StringBuilder sbBuffer = new StringBuilder(260);
iRet = GetPrivateProfileString(lpAppName, lpKeyName, lpDefault, sbBuffer, (uint)sbBuffer.Capacity, lpFileName);
strBuffer = sbBuffer.ToString();
return iRet;
}
C#:
dll.GetMyPrivateProfileString("MESSAGETYPESETTING", null, "", ref strKeys, strConfigFilePath);
Kann mir jemand sagen wo das Problem liegen könnte.
Vielen Dank.
Grüße von CopWorker