69a40c93f9f1ae057f1d2201f114cddd6ecb8ee1.svn-base 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Text;
  7. using System.Windows.Forms;
  8. using System.IO;
  9. using Microsoft.Win32;
  10. // 2015.8.20
  11. // 시운전하고 , 프로젝트를 관리하는 사람들이 사용하도록 프로그램을 구성한다
  12. // 닷넷프레임워크는 2.0 (이전 버전도 적용해야되므로)
  13. // 1. 현재 동작중인 프로그램 종료
  14. // 2. 이벤트로그 데이타 삭제
  15. // 3. 레지스트리값에 최신 작업내역을 쓰고, 세부 내용은 별도의 텍스트 로그로 남겨놓는다
  16. // 2016.11.24
  17. // 수신기 형식 인증을 위해 아래와 같이 프로그램을 준비한다
  18. // 시운전프로그램 준비 -> 동글인식해야 프로그램가동 + 데이타베이스 교체 -> 로그인 (사용자계정이 별도로 있음) -> 사유기록-> 사용기록파일을 남기도록 함
  19. namespace IControls_FireManager
  20. {
  21. public partial class Login : Form
  22. {
  23. string user_ini_path = "C:\\fireguard\\";
  24. public Login()
  25. {
  26. InitializeComponent();
  27. // 동글락키 체크
  28. bool CheckDongle = _RockeyDll2.DonggleCheck();
  29. if (CheckDongle == false)
  30. {
  31. MessageBox.Show("USB Rockey Not Find!");
  32. Environment.Exit(0);
  33. }
  34. // fireguard 폴더를 생성한다
  35. if (!System.IO.Directory.Exists(user_ini_path))
  36. {
  37. System.IO.Directory.CreateDirectory(user_ini_path);
  38. }
  39. // fireguard 폴더안에 user.ini 파일이 없으면 디폴트로 생성
  40. if (File.Exists(user_ini_path + "user.ini") == false)
  41. {
  42. // 기초 파일 생성
  43. _Ini.Create_Ini("", user_ini_path + "user.ini");
  44. _Ini.Write_Ini("USER", "sa", "1234", user_ini_path + "user.ini");
  45. _Ini.Write_Ini("USER", "fire1", "1q2w", user_ini_path + "user.ini");
  46. _Ini.Write_Ini("USER", "fire2", "234w", user_ini_path + "user.ini");
  47. _Ini.Write_Ini("USER", "fire3", "3e4r", user_ini_path + "user.ini");
  48. _Ini.Write_Ini("USER", "fire4", "456r", user_ini_path + "user.ini");
  49. _Ini.Write_Ini("USER", "fire5", "5t6y", user_ini_path + "user.ini");
  50. _Ini.Write_Ini("USER", "fire6", "678y", user_ini_path + "user.ini");
  51. _Ini.Write_Ini("USER", "fire7", "1q2w", user_ini_path + "user.ini");
  52. _Ini.Write_Ini("USER", "fire8", "234w", user_ini_path + "user.ini");
  53. _Ini.Write_Ini("USER", "fire9", "3e4r", user_ini_path + "user.ini");
  54. _Ini.Write_Ini("USER", "fire10", "456r", user_ini_path + "user.ini");
  55. _Ini.Write_Ini("USER", "fire11", "5t6y", user_ini_path + "user.ini");
  56. _Ini.Write_Ini("USER", "fire12", "678y", user_ini_path + "user.ini");
  57. _Ini.Write_Ini("USER", "fire13", "1q2w", user_ini_path + "user.ini");
  58. _Ini.Write_Ini("USER", "fire14", "234w", user_ini_path + "user.ini");
  59. _Ini.Write_Ini("USER", "fire15", "3e4r", user_ini_path + "user.ini");
  60. _Ini.Write_Ini("USER", "fire16", "456r", user_ini_path + "user.ini");
  61. _Ini.Write_Ini("USER", "fire17", "5t6y", user_ini_path + "user.ini");
  62. _Ini.Write_Ini("USER", "fire18", "678y", user_ini_path + "user.ini");
  63. _Ini.Write_Ini("USER", "fire19", "1q2w", user_ini_path + "user.ini");
  64. _Ini.Write_Ini("USER", "fire20", "234w", user_ini_path + "user.ini");
  65. // 임시파일 생성후 암호 생성후 대체해버린다
  66. // 파일 암호화
  67. _Encrypt.EncryptFile(user_ini_path + "user.ini", user_ini_path + "temp.ini");
  68. // 덮어쓰기
  69. File.Copy(user_ini_path + "temp.ini", user_ini_path + "user.ini", true);
  70. // 임시파일 삭제
  71. File.Delete(user_ini_path + "temp.ini");
  72. }
  73. }
  74. // 로그인 버튼
  75. private void button_login_Click(object sender, EventArgs e)
  76. {
  77. // 임시파일 생성후 암호만 추출후 삭제해버린다
  78. // 파일 복호화
  79. _Encrypt.DecryptFile(user_ini_path + "user.ini", user_ini_path + "temp.ini");
  80. // 비밀번호 찾기
  81. string read_pw = _Ini.Read_Ini("USER", this.textBox_ID.Text, 1024, user_ini_path + "temp.ini");
  82. string temp_pw = this.textBox_PW.Text.Trim();
  83. // 임시파일 삭제
  84. File.Delete(user_ini_path + "temp.ini");
  85. if (read_pw == temp_pw && temp_pw != null && temp_pw != "")
  86. {
  87. this.Visible = false;
  88. Main main = new Main(this.textBox_ID.Text);
  89. main.Show();
  90. }
  91. else
  92. MessageBox.Show("잘못된 패스워드 입니다");
  93. }
  94. }
  95. }