файл sql.ini
[server1]
master=значение
query=значение
[server2]
master=значение
query=значение
ну вот мне надо вытащить значения
я использую апи функцию GetPrivateProfileString
создал класс для чтения:
- Код: Выделить всё
public class IniFile
{
public string path;
[DllImport("kernel32")]
private static extern int GetPrivateProfileString(string section,
string key, string def, StringBuilder retVal,
int size, string filePath);
public IniFile(string INIPath)
{
path = INIPath;
}
public string IniReadValue(string Section,string Key)
{
StringBuilder temp = new StringBuilder();
string str=GetPrivateProfileString(Section,Key,"",temp,
255, this.path).ToString();
return temp.ToString();
}
}
затем создаю экземпляр класса
- Код: Выделить всё
IniFile ini = new IniFile("sql.ini");
затем вставляю вызов функции
- Код: Выделить всё
private void Form1_Load(object sender, EventArgs e)
{
label3.Text = ini.IniReadValue("server1", "master");
}
в результате 0, почему я же указал секцию и ключ, он мне должен вернуть значение ?, хотя как я прочитал GetPrivateProfileString возвращает только число скопированных символов --- это я не понимаю, что конкретно он возвращает и если я делаю не так, то плиз подскажите ошибку