} // 파일 삭제 요청 public void LogFileUpload() { try { myfilepath = System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + @"\SLog"); logsavesetting = new LogSaveSetting(); string filename = Data.Instance.ftp_myfilename + ".xml"; FtpWebRequest request = (FtpWebRequest)WebRequest.Create("ftp://192.168.0.8:8000/home/" + Data.Instance.myId + "/" + filename); request.Method = WebRequestMethods.Ftp.UploadFile; request.Credentials = new NetworkCredential(FTPid, FTPpw); byte[] fileContents = new byte[2048]; fileContents = File.ReadAllBytes(myfilepath + "\\" + filename); request.ContentLength = fileContents.Length; Stream requestStream = request.GetRequestStream(); requestStream.Write(fileContents, 0, fileContents.Length); requestStream.Close(); FtpWebResponse response = (FtpWebResponse)request.GetResponse(); FileUploadSuccess(); //System.Windows.Forms.MessageBox.Show("Upload File Complete, status {0}", response.StatusDescription); response.Close(); } catch (Exception ex) { System.Windows.Forms.MessageBox.Show(ex.Message); } }
//public void gkh_KeyUp(object sender, KeyEventArgs e) // 키보드 업 이벤트가 발생했을 때의 처리 //{ // string str = ""; // #region ShiftKey, LControlKey, LMenu, LWin와 같은 특수키가 눌렸을 때의 처리 // switch (e.KeyCode) // { // case Keys.LShiftKey: // ImportFunctions.keybd_event((byte)Keys.LShiftKey, 0, 0x02, 0); // if (IsShift == false) return; // str = "LShiftKey Up"; // IsShift = false; // break; // case Keys.RShiftKey: // ImportFunctions.keybd_event((byte)Keys.RShiftKey, 0, 0x02, 0); // if (IsShift == false) return; // str = "RShiftKey Up"; // IsShift = false; // break; // case Keys.LControlKey: // ImportFunctions.keybd_event((byte)Keys.LControlKey, 0, 0x02, 0); // if (IsCtr == false) return; // if (recording_starting == false) return; // str = "LControlKey Up"; // IsCtr = false; // break; // case Keys.LMenu: // ImportFunctions.keybd_event((byte)Keys.LMenu, 0, 0x02, 0); // if (IsAlt == false) return; // str = "LMenu Up"; // IsAlt = false; // break; // case Keys.LWin: // ImportFunctions.keybd_event((byte)Keys.LWin, 0, 0x02, 0); // if (IsWin == false) return; // str = "LWin Up"; // IsWin = false; // break; // case Keys.NumLock: ImportFunctions.keybd_event((byte)Keys.NumLock, 0, 0x02, 0); break; // case Keys.Capital: ImportFunctions.keybd_event((byte)Keys.Capital, 0, 0x02, 0); break; // } // #endregion // if (str != "") // { // dt_class.Rec_list.Add(str); // // 레코딩 List 이벤트 기록 // MainRecording.Instance.LogXamlList.Items.Add("Keyboard Count " + dt_class.Rec_list.Count().ToString() + " : " + str); // MainRecording.Instance.LogXamlList.ScrollIntoView(MainRecording.Instance.LogXamlList.Items[MainRecording.Instance.LogXamlList.Items.Count - 1]); // // 레코딩 ShowList 이벤트 기록 // MainRecording.Instance.ShowList_Dlg.S_List.Items.Add("Keyboard Count " + dt_class.Rec_list.Count().ToString() + " : " + str); // MainRecording.Instance.ShowList_Dlg.S_List.ScrollIntoView(MainRecording.Instance.ShowList_Dlg.S_List.Items[MainRecording.Instance.ShowList_Dlg.S_List.Items.Count - 1]); // } // e.Handled = true; //} //public void gkh_KeyDown(object sender, KeyEventArgs e) //{ // Keys Key; // char ch = ' '; // string str = ""; // #region ShiftKey, LControlKey, LMenu, LWin 키 상태값 // switch (e.KeyCode.ToString()) // { // case "LControlKey": IsCtr = true; break; // case "LMenu": IsAlt = true; break; // } // #endregion // #region 단축키 기능 // if ( IsCtr == true && logplaying_starting == false) // 로그 재생 // { // RecordPlayButtonEvent(); // IsCtr = false; // } // //if (e.KeyCode.ToString() == LogPlayStopKey && IsCtr == true) // 로그 재생 정지 // //{ // // RecordPlayStopButtonEvent(); // // IsCtr = false; // //} // //if (e.KeyCode.ToString() == RecordStartKey && IsCtr == true && logplaying_starting == false) // 로그 녹화 시작 // //{ // // RecordStartButtonEvent(); // // IsCtr = false; // //} // //if (e.KeyCode.ToString() == RecordStopKey && IsCtr == true && logplaying_starting == false) // 로그 녹화 정지 // //{ // // RecordStopButtonEvent(); // // IsCtr = false; // //} // //if (e.KeyCode.ToString() == ModulLogKey && IsCtr == true && logplaying_starting == false) // 로그 모듈화 시작 or 정지 // //{ // // LogModulePlayOrStopButtonEvent(); // // IsCtr = false; // //} // //if (e.KeyCode.ToString() == PauseKey && pausing_starting == true) // 일시정지 상태 해제 // // PauseStateEscape(); // #endregion // #region Keydown 이벤트 처리 // else if (recording_starting && is_startsetting) // { // for (int i = 0; i < gkh.HookedKeys.Count; i++) // { // if (e.KeyCode == gkh.HookedKeys[i]) // 리스트의 인덱스가 입력키랑 일치할경우 // { // str = gkh.HookedKeys[i].ToString(); // //#region ShiftKey, LControlKey, LMenu, LWin // //switch (e.KeyCode.ToString()) // //{ // // case "LShiftKey": IsShift = true; break; // // case "RShiftKey": IsShift = true; break; // // case "LControlKey": IsCtr = true; break; // // case "LMenu": IsAlt = true; break; // // case "LWin": IsWin = true; break; // //} // //#endregion // #region (Shift) 영어 대문자 예외 // if (IsShift == true && e.KeyValue >= 65 && e.KeyValue <= 90) // { // ch = char.Parse(e.KeyData.ToString()); // str = ch.ToString(); // } // #endregion // #region (Shift) 영어 소문자 예외 // if (IsShift == true /*&& IsCap == true*/ && e.KeyValue >= 65 && e.KeyValue <= 90) // { // ch = (char)(char.Parse(str) + 32); // str = ch.ToString(); // } // #endregion // #region 영어 소문자 예외 // if (IsShift == false /*&& IsCap == false*/ && e.KeyValue >= 65 && e.KeyValue <= 90) // 영어 소문자일경우 // { // ch = (char)(char.Parse(str) + 32); // str = ch.ToString(); // } // #endregion // Key = gkh.HookedKeys[i]; // // ========================================================= // // 일반 영문 또는 한글 키 입력이 되었을 때 캡스락과 한영키가 눌렸는지 확인하기 위한 알고리즘 // if (KeyboardHooking.Instance.module_StartOrStop == false) // { // string rec_string = str; // for (int j = 0; j < Data.Instance.exceptionkey.Length; j++ ) // { // if(str == "CapsLock") // { // rec_string = str + "□" + MainRecording.Instance.GetWindowHandle_CapsLockValue(); // break; // } // else if(str == "KanaMode") // { // rec_string = str + "■" + MainRecording.Instance.GetWindowHandle_KanaValue(); // break; // } // else if(str != Data.Instance.exceptionkey[j]) // { // rec_string = str + "▲" + MainRecording.Instance.GetWindowHandle_KanaValue() + "△" + MainRecording.Instance.GetWindowHandle_CapsLockValue(); // } // else // { // rec_string = str; // break; // } // } // // key▲K△On // dt_class.Rec_list.Add(rec_string); // MainRecording.Instance.LogXamlList.Items.Add("Keyboard Count " + dt_class.Rec_list.Count().ToString() + " : " + rec_string); // MainRecording.Instance.LogXamlList.ScrollIntoView(MainRecording.Instance.LogXamlList.Items[MainRecording.Instance.LogXamlList.Items.Count - 1]); // // 레코딩 ShowList 이벤트 기록 // MainRecording.Instance.ShowList_Dlg.S_List.Items.Add("Keyboard Count " + dt_class.Rec_list.Count().ToString() + " : " + rec_string); // MainRecording.Instance.ShowList_Dlg.S_List.ScrollIntoView(MainRecording.Instance.ShowList_Dlg.S_List.Items[MainRecording.Instance.ShowList_Dlg.S_List.Items.Count - 1]); // } // else if (KeyboardHooking.Instance.module_StartOrStop) // { // // 레코딩 SampleModule 이벤트 기록 // MainRecording.Instance.SampleModule_Dlg.M_List.Items.Add(str); // MainRecording.Instance.SampleModule_Dlg.M_List.ScrollIntoView(MainRecording.Instance.SampleModule_Dlg.M_List.Items[MainRecording.Instance.SampleModule_Dlg.M_List.Items.Count - 1]); // dt_class.Rec_list.Add(str); // dt_class.ModRec_list.Add(str); // 모듈녹화 리스트에 키 저장 // } // return; // } // } // e.Handled = true; // } // #endregion //} #endregion #endregion #region Button, Keyboard 입력에 의한 Event 처리 함수 public void RecordStopButtonEvent() // Ctrl + F10 녹화 완전 정지 { if (recording_starting) // 녹화 도중 { recording_starting = false; // 일단 녹화정지 후 저장여부 메세지박스를 띄움 MainRecording.Instance.PausedEvent(); // 녹화 일시 정지 버튼 pausing_starting = true; // 일시정지가 시작 중 logsave_dlg = new LogSaveSetting(); logsave_dlg.Show(); f10key = false; } }
private void Stop_Click(object sender, RoutedEventArgs e) { if (MessageBox.Show("녹화한 데이터를 SLog 폴더에 저장하시겠습니까?", "", MessageBoxButton.YesNo) == MessageBoxResult.Yes) { logsave_dlg = new LogSaveSetting(); logsave_dlg.Show(); //SaveFunction.Instance.LogFileSaveFunction(); //MainRecording.Instance.StopEvent(); this.Hide(); //MainRecording.Instance.WindowState = WindowState.Normal; if (screen_dlg != null) { screen_dlg.Close(); } if (KeyboardHooking.Instance.memo_dlg != null) { KeyboardHooking.Instance.memo_dlg.Close(); } if (MainRecording.Instance.ShowList_Dlg != null) { MainRecording.Instance.ShowList_Dlg.Close(); } Data.Instance.screenIndex = 0; } else { try { File.Delete(SaveFunction.Instance.g_filepathname); // 관련된 이미지파일도 삭제한다. string sDirPath = System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + @"\SLog\"); DirectoryInfo di = new DirectoryInfo(sDirPath); // 파일디렉토리를 돌아서, FileName과, .jpg를 포함한다면 모두 삭제. foreach (var item in di.GetFiles()) { if (item.Name.Contains(".jpg")) { string[] filenameExceptjpg = item.Name.Split('_'); // SLog의 모든 jpg파일을 가져와서 확장자를 제거 if (SaveFunction.Instance.g_filenameexceptxml == filenameExceptjpg[0]) { File.Delete(sDirPath + item.Name); } } } if (MessageBox.Show("녹화된 데이터를 초기화하시겠습니까?", "", MessageBoxButton.YesNo) == MessageBoxResult.Yes) { MainRecording.Instance.StopEvent(); this.Hide(); MainRecording.Instance.WindowState = WindowState.Normal; if (screen_dlg != null) { screen_dlg.Close(); } if (KeyboardHooking.Instance.memo_dlg != null) { KeyboardHooking.Instance.memo_dlg.Close(); } if (MainRecording.Instance.ShowList_Dlg != null) { MainRecording.Instance.ShowList_Dlg.Close(); } } else { //SaveFunction.Instance.GetSaveFileIndex(); //this.Hide(); //MainRecording.Instance.WindowState = WindowState.Normal; } Data.Instance.screenIndex = 0; } catch (Exception ex) { MessageBox.Show(ex.Message); } } KeyboardHooking.Instance.f10key = false; }