Problem mit GetPrivateProfileString()



  • Hallo, ich bräuchte mal wieder eure Hilfe.
    Undzwar habe ich ein Problem mit der Funktion GetPrivateProfileString, bzw. speziell mit deren 4. Parameter.

    Hier erstmal die komplette Funktionsdeklaration

    DWORD GetPrivateProfileString(
      LPCTSTR lpAppName,
      LPCTSTR lpKeyName,
      LPCTSTR lpDefault,
      LPTSTR lpReturnedString,
      DWORD nSize,
      LPCTSTR lpFileName
    );
    
    lpReturnedString 
    [out] Pointer to the buffer that receives the retrieved string.
    

    Und nun macht mir der 4. Parameter Probleme. Übergebe ich eine vorher als LPSTR deklarierte Variable, gibts beim Kompilieren überhaupt kein Problem, jedoch meckert er beim debuggen und meldet eine Access Violation bzw. "Unhandle Exception". Und wenn ich ihm einen Pointer auf einen vorher deklarierten String geben meckert er verständlicherweise beim Kompilieren.
    Hat eventuell jemand von euch bereits diese Problem oder weiß den Trick den ich anwenden muss?

    Freue mich auf Anworten.
    Grüße, inva



  • LPTSTR ist ein simpler char* (oder wchar_t*) - da mußt du natürlich auch Speicher bereitstellen, auf den er zeigen kann, indem du entweder per new[] Speicher bereitstellst oder die Adresse eines vorher angelegten TCHAR-Arrays übergibst:

    TCHAR text[100];
    GetPrivateProfileString(...,text,100,...);
    


  • *edit*

    Problem gelöst, danke für den Lösungsansatz !



  • Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum WinAPI verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.


Anmelden zum Antworten