Michael_M Geschrieben 8. September 2010 Geschrieben 8. September 2010 (bearbeitet) huhu, ich bins mal wieder hab da ein neues problem. ich möchte gerne eine ini auslesen mit dem code Public Function GetIniString(ByVal Sektion As String, _ ByVal Titel As String, ByVal Vorgabe As String, _ ByVal INIFile As String, _ Optional ByVal nSize As Integer = 256) As String Dim lResult As Long Dim sValue As String sValue = Space(nSize) lResult = GetPrivateProfileString(Sektion, Titel, _ Vorgabe, sValue, nSize, INIFile) GetIniString = Left$(sValue, lResult) End Function leider bekomme ich am ende (getinistring) eine overflow exeption mit dem wert "8589934592". ich habe keine erklärung dafür. ich hoffe einer von euch weiß rat. unter visual studio 2008 funzt das einwand frei aber ich arbeite mit visual studio 2010 und tritt das prob auf. danke schon mal! gruß michael Bearbeitet 8. September 2010 von Michael_M Zitieren
2K1.INC Geschrieben 8. September 2010 Geschrieben 8. September 2010 (bearbeitet) mach doch einfach aus dem Integer = 256 ein long oder _int64 ka wie es in VB heist.. Dim lResult As Long <--- ist ja auch ein long Bearbeitet 8. September 2010 von 2K1.INC Zitieren
Michael_M Geschrieben 9. September 2010 Autor Geschrieben 9. September 2010 auch das funzt nicht. ich bekomme immer die gleich fehlermeldung. ich hab auch schon IResult als integer, int64 und short probiert. immer das gleiche. vorallem bin ich verwundert, das es unter vs2008 klappt aber unter vs2010 nicht. Zitieren
Saifai Geschrieben 13. September 2010 Geschrieben 13. September 2010 [DllImport("kernel32")] private static extern int GetPrivateProfileString(string section, string key, string def, StringBuilder retVal, int size, string filePath); das vorvorletzte argument sollte ein stringbuilder sein und kein string evtl liegts an dem... Zitieren
Michael_M Geschrieben 15. September 2010 Autor Geschrieben 15. September 2010 hab nu ne andere variante gewählt (settings von visual studio), bei der ich leider wieder auf ein problem gestoßen bin. und zwar kann ich die einträge nicht mehr ändern. meine versuche sehen so aus If Len(TextBox_server.Text) <> 0 Then My.Settings.s_server.Replace(My.Settings.s_server, TextBox_server.Text) 'keine wirkung 'My.Settings.s_server = TextBox_server.Text 'geht nicht, da read only My.Settings.Save() TextBox_server.Clear() End If hat jemand ne idee, was da falsch läuft bzw hat ne andere lösung! micha Zitieren
Klotzkopp Geschrieben 15. September 2010 Geschrieben 15. September 2010 Ist das ein Application Setting? Die sind absichtlich read-only. Nimm ein User Setting, wenn du es verändern willst. Zitieren
Michael_M Geschrieben 15. September 2010 Autor Geschrieben 15. September 2010 ja, ist application setting. das read only wurde automatisch gemacht. aber genau das war das prob. hab die nu auf user gestellt und es funzt wunderbar. danke!! Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.