어쩌다 보니 첫글이 되어버렸다.
이걸 올리려고 네이버 블로그도 해보고 네이트블로그도 해봤지만 소스코드가 만족스러운 수준으론는 안나오더라
여기저기 알아보니 SyntaxHighlighter라는 프로그램이 있는데 소스를 아래와같이 표현해주네.
거뚜 또 티스토리에서만 되는거 같더라니... 어쩔수 없이 가입하려고 보니 초대장이 필요하대. 제길.
여기 저기 기웃기웃 구걸구걸 하다가 neoadonis란 분이 초대장을 투척해주심. 감사 (__)
일단 올려봄.
거의 내가 참고하려고 올린거니까 좋은 잘만든 소스는 아님. ㅠㅠ 언제쯤 만족스런 코드를 올려볼수 있을까.
.
</br></br>
using System; using System.Collections.Generic; using System.Text; using Microsoft.Win32; using System.IO.Ports; namespace SMGSerial { public class SMG_SerialConnectionInfo { public static string SerialPortName = ""; public static int SerialBaudRate = 9600; public static int SerialDataBits = 8; public static Parity SerialParity = Parity.None; public static StopBits SerialStopBits = StopBits.One; public static void Save() { Registry.SetValue(@"HKEY_CURRENT_USER\SMGSerial\PortConfig", "PortName", SerialPortName); Registry.SetValue(@"HKEY_CURRENT_USER\SMGSerial\PortConfig", "BaudRate", SerialBaudRate); Registry.SetValue(@"HKEY_CURRENT_USER\SMGSerial\PortConfig", "DataBits", SerialDataBits); Registry.SetValue(@"HKEY_CURRENT_USER\SMGSerial\PortConfig", "Parity", SerialParity); Registry.SetValue(@"HKEY_CURRENT_USER\SMGSerial\PortConfig", "StopBits", SerialStopBits); } public static void Load() { SerialPortName= (Registry.GetValue(@"HKEY_CURRENT_USER\SMGSerial\PortConfig", "PortName", "") == null ? SerialPortName : (string)Registry.GetValue(@"HKEY_CURRENT_USER\SMGSerial\PortConfig", "PortName", "")); #region 포트 번호가 바뀌었을때 처리 - 포트번호를 null초기화 하여 다시 환경설정을 하도록 한다. string PortNameTemp = string.Empty; foreach (string comport in SerialPort.GetPortNames()) { if (SerialPortName == comport) { PortNameTemp = comport; } } if (PortNameTemp == string.Empty) SerialPortName = ""; #endregion SerialBaudRate = (Registry.GetValue(@"HKEY_CURRENT_USER\SMGSerial\PortConfig", "BaudRate", "") == null ? SerialBaudRate : (int)Registry.GetValue(@"HKEY_CURRENT_USER\SMGSerial\PortConfig", "BaudRate", "")); SerialDataBits = (Registry.GetValue(@"HKEY_CURRENT_USER\SMGSerial\PortConfig", "DataBits", "") == null ? SerialDataBits : (int)Registry.GetValue(@"HKEY_CURRENT_USER\SMGSerial\PortConfig", "DataBits", "")); SerialParity = GetParity((string)Registry.GetValue(@"HKEY_CURRENT_USER\SMGSerial\PortConfig", "Parity", "")); SerialStopBits = GetStopBits((string)Registry.GetValue(@"HKEY_CURRENT_USER\SMGSerial\PortConfig", "SerialStopBits", "")); } public static string GetParity(Parity param) { string rtnValue = string.Empty; switch (param) { case Parity.Even : rtnValue = "Even"; break; case Parity.Mark : rtnValue = "Mark"; break; case Parity.None : rtnValue = "None"; break; case Parity.Odd : rtnValue = "Odd"; break; case Parity.Space : rtnValue = "Space"; break; default: rtnValue = "None"; break; } return rtnValue; } public static Parity GetParity(string param) { Parity rtnValue = Parity.None; switch (param) { case "Even": rtnValue = Parity.Even; break; case "Mark": rtnValue = Parity.Mark; break; case "None": rtnValue = Parity.None; break; case "Odd": rtnValue = Parity.Odd; break; case "Space": rtnValue = Parity.Space; break; default: rtnValue = Parity.None; break; } return rtnValue; } public static string GetStopBits(StopBits param) { string rtnValue = string.Empty; switch (param) { case StopBits.None : rtnValue = "None"; break; case StopBits.One : rtnValue = "One"; break; case StopBits.OnePointFive : rtnValue = "OnePointFive"; break; case StopBits.Two : rtnValue = "Two"; break; default: rtnValue = "One"; break; } return rtnValue; } public static StopBits GetStopBits(string param) { StopBits rtnValue = StopBits.One; switch (param) { case "None": rtnValue = StopBits.None; break; case "One": rtnValue = StopBits.One; break; case "OnePointFive": rtnValue = StopBits.OnePointFive; break; case "Two": rtnValue = StopBits.Two; break; default: rtnValue = StopBits.One; break; } return rtnValue; } } }
'c#' 카테고리의 다른 글
visualstudio 첫 셋팅 저장 (0) | 2020.05.20 |
---|---|
어디서인가 퍼온글... (0) | 2011.01.06 |
c# 폼의 중복실행 방지 (0) | 2010.08.17 |
c# 특정 폴더나 사이트 열기 (1) | 2010.08.16 |
c# DateTime에서 ToString으로 변환할때... (0) | 2010.08.10 |