Добрий вечір.
Завдання: Створити програму, яка повинна пам'ятати розмір та положення вікна, а також вміст поля введення та перемикача.
Пояснення: Тобто форма, на якій розміщений textBox та checkBox. Записувати в *.ini файл this->width/this->height/textBox->Text/checkBox->Checked та відповідно зчитувати.
Реалізація: Знайшов декілька прикладів, взяв за основу цей: http://2lx.ru/2010/02/chtenie-i-zapis-ini-fajlov-v-visual-c/ . Створив біля *.exe-файлу (проекта) та біля *.h-головної форми файли simple.ini
▼Зміст цих файлів
[Form_Settings]
Width = ;
// Це типу закоментовані рядки
;Height = ;
;TextBox_Text = ;
;CheckBox_Checked = ;
;Position = ;
Далі намагаюсь записати ширину форми в поданий файл.
▼Код запису в *.ini файл
/*Переведення з System::String^ в std::string*/
private: std::string sysStringToStdString(System::String^ systemString) {
std::string newString = msclr :: interop :: marshal_as <std::string> (systemString);
return newString;
}
/*Функція запису в *.ini файл*/
private: bool WriteToIni(char *filename, char *section, char *key, char* data) {
return WritePrivateProfileString((LPCWSTR)section, (LPCWSTR)key, (LPCWSTR)data, (LPCWSTR)filename);
}
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
// Ширина поля переведена з int в string
string FormWidht = sysStringToStdString(this -> Width.ToString());
// та в char*
char* CharValue = new char[FormWidht.size() + 1];
WriteToIni("simple.ini", "Form_Settings", "Width", CharValue);
}
Проблема: Як ви вже зрозуміли, проблема в тому, що в файл нічого не записується. Помилок при компіляції не вибиває.