개발 노트

C# ini 저장해서 재실행시 불러오기 본문

프로그래밍/C#

C# ini 저장해서 재실행시 불러오기

알 수 없는 사용자 2022. 3. 7. 15:01

ini 저장함수

	private void initCloseMethod()
		{
			// ini파일에 등록
			// WritePrivateProfileString("카테고리", "Key값", "Value", "저장할 경로");
			WritePrivateProfileString("MqttClient", "LastHostName", textBoxHost.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("MqttClient", "LastSubTopic", textBoxSubTopic.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("MqttClient", "LastPubTopic1", textBoxPT1.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("MqttClient", "LastPubTopic2", textBoxPT2.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("MqttClient", "LastPubTopic3", textBoxPT3.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("MqttClient", "LastPubTopic4", textBoxPT4.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("MqttClient", "LastPubTopic5", textBoxPT5.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("MqttClient", "LastPubTopic6", textBoxPT6.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("MqttClient", "LastPubTopic7", textBoxPT7.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("MqttClient", "LastPubTopic8", textBoxPT8.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("MqttClient", "LastPubTopic9", textBoxPT9.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("MqttClient", "LastPubTopic10", textBoxPT10.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("MqttClient", "LastMessage1", textBoxM1.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("MqttClient", "LastMessage2", textBoxM2.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("MqttClient", "LastMessage3", textBoxM3.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("MqttClient", "LastMessage4", textBoxM4.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("MqttClient", "LastMessage5", textBoxM5.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("MqttClient", "LastMessage6", textBoxM6.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("MqttClient", "LastMessage7", textBoxM7.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("MqttClient", "LastMessage8", textBoxM8.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("MqttClient", "LastMessage9", textBoxM9.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("MqttClient", "LastMessage10", textBoxM10.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("Color", "Red", textBoxRed.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("Color", "Green", textBoxGreen.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("Color", "Yellow", textBoxYellow.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("Color", "Gray", textBoxGray.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("Color", "Navy", textBoxNavy.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("Color", "Purple", textBoxPurple.Text, Application.StartupPath + @"\MqttClient.ini");
			WritePrivateProfileString("Color", "Lime", textBoxLime.Text, Application.StartupPath + @"\MqttClient.ini");
		}

 

init 불러오기

	private void initload()
		{
			// ini값을 집어넣을 변수 선언
			StringBuilder host = new StringBuilder();
			StringBuilder topic = new StringBuilder();
			StringBuilder pub1 = new StringBuilder();
			StringBuilder pub2 = new StringBuilder();
			StringBuilder pub3 = new StringBuilder();
			StringBuilder pub4 = new StringBuilder();
			StringBuilder pub5 = new StringBuilder();
			StringBuilder pub6 = new StringBuilder();
			StringBuilder pub7 = new StringBuilder();
			StringBuilder pub8 = new StringBuilder();
			StringBuilder pub9 = new StringBuilder();
			StringBuilder pub10 = new StringBuilder();
			StringBuilder m1 = new StringBuilder();
			StringBuilder m2 = new StringBuilder();
			StringBuilder m3 = new StringBuilder();
			StringBuilder m4 = new StringBuilder();
			StringBuilder m5 = new StringBuilder();
			StringBuilder m6 = new StringBuilder();
			StringBuilder m7 = new StringBuilder();
			StringBuilder m8 = new StringBuilder();
			StringBuilder m9 = new StringBuilder();
			StringBuilder m10 = new StringBuilder();
			StringBuilder red = new StringBuilder();
			StringBuilder green = new StringBuilder();
			StringBuilder yellow = new StringBuilder();
			StringBuilder gray = new StringBuilder();
			StringBuilder navy = new StringBuilder();
			StringBuilder purple = new StringBuilder();
			StringBuilder lime = new StringBuilder();

			// ini파일에서 데이터를 불러옴
			// GetPrivateProfileString("카테고리", "Key값", "기본값", "저장할 변수", "불러올 경로");
			GetPrivateProfileString("MqttClient", "LastHostName", "", host, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("MqttClient", "LastSubTopic", "", topic, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("MqttClient", "LastPubTopic1", "", pub1, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("MqttClient", "LastPubTopic2", "", pub2, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("MqttClient", "LastPubTopic3", "", pub3, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("MqttClient", "LastPubTopic4", "", pub4, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("MqttClient", "LastPubTopic5", "", pub5, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("MqttClient", "LastPubTopic6", "", pub6, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("MqttClient", "LastPubTopic7", "", pub7, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("MqttClient", "LastPubTopic8", "", pub8, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("MqttClient", "LastPubTopic9", "", pub9, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("MqttClient", "LastPubTopic10", "", pub10, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("MqttClient", "LastMessage1", "", m1, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("MqttClient", "LastMessage2", "", m2, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("MqttClient", "LastMessage3", "", m3, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("MqttClient", "LastMessage4", "", m4, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("MqttClient", "LastMessage5", "", m5, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("MqttClient", "LastMessage6", "", m6, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("MqttClient", "LastMessage7", "", m7, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("MqttClient", "LastMessage8", "", m8, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("MqttClient", "LastMessage9", "", m9, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("MqttClient", "LastMessage10", "", m10, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("Color", "Red", "", red, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("Color", "Green", "", green, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("Color", "Yellow", "", yellow, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("Color", "Gray", "", gray, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("Color", "Navy", "", navy, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("Color", "Purple", "", purple, 32, Application.StartupPath + @"\MqttClient.ini");
			GetPrivateProfileString("Color", "Lime", "", lime, 32, Application.StartupPath + @"\MqttClient.ini");

			// 텍스트박스에 ini파일에서 가져온 데이터를 넣는다
			textBoxHost.Text = host.ToString();
			textBoxSubTopic.Text = topic.ToString();
			textBoxPT1.Text = pub1.ToString();
			textBoxPT2.Text = pub2.ToString();
			textBoxPT3.Text = pub3.ToString();
			textBoxPT4.Text = pub4.ToString();
			textBoxPT5.Text = pub5.ToString();
			textBoxPT6.Text = pub6.ToString();
			textBoxPT7.Text = pub7.ToString();
			textBoxPT8.Text = pub8.ToString();
			textBoxPT9.Text = pub9.ToString();
			textBoxPT10.Text = pub10.ToString();
			textBoxM1.Text = m1.ToString();
			textBoxM2.Text = m2.ToString();
			textBoxM3.Text = m3.ToString();
			textBoxM4.Text = m4.ToString();
			textBoxM5.Text = m5.ToString();
			textBoxM6.Text = m6.ToString();
			textBoxM7.Text = m7.ToString();
			textBoxM8.Text = m8.ToString();
			textBoxM9.Text = m9.ToString();
			textBoxM10.Text = m10.ToString();
			textBoxRed.Text = red.ToString();
			textBoxGreen.Text = green.ToString();
			textBoxYellow.Text = yellow.ToString();
			textBoxGray.Text = gray.ToString();
			textBoxNavy.Text = navy.ToString();
			textBoxPurple.Text = purple.ToString();
			textBoxLime.Text = lime.ToString();
		}