diff --git a/leak_test_project.Tests/Services/Board4253ServiceTests.cs b/leak_test_project.Tests/Services/Board4253ServiceTests.cs new file mode 100644 index 0000000..e3e05b2 --- /dev/null +++ b/leak_test_project.Tests/Services/Board4253ServiceTests.cs @@ -0,0 +1,104 @@ +using System; +using System.Threading.Tasks; +using leak_test_project.Infrastructure; +using leak_test_project.Services; +using Moq; +using Xunit; + +namespace leak_test_project.Tests.Services +{ + public class Board4253ServiceTests + { + [Fact] + public async Task CheckStatusAsync_Success_ReturnsTrue() + { + // Arrange + var mockComm = new Mock(); + mockComm.Setup(c => c.IsOpen).Returns(true); + var service = new Board4253Service(mockComm.Object); + int channel = 1; + string expectedCommand = "x00c_001101:owt28006727ea97c7801\r\n"; + + // Simulate receiving Success message + mockComm.Setup(c => c.Write(It.Is(s => s == expectedCommand))) + .Callback(cmd => { + Task.Run(() => { + mockComm.Raise(c => c.DataReceived += null, mockComm.Object, "Response: Success "); + }); + }); + + // Act + bool result = await service.CheckStatusAsync(channel); + + // Assert + Assert.True(result); + mockComm.Verify(c => c.Write(expectedCommand), Times.AtLeastOnce); + } + + [Fact] + public async Task CheckStatusAsync_Fail_ReturnsFalse() + { + // Arrange + var mockComm = new Mock(); + mockComm.Setup(c => c.IsOpen).Returns(true); + var service = new Board4253Service(mockComm.Object); + + // Simulate receiving Fail message + mockComm.Setup(c => c.Write(It.IsAny())) + .Callback(cmd => { + Task.Run(() => { + mockComm.Raise(c => c.DataReceived += null, mockComm.Object, "Response: Fail "); + }); + }); + + // Act + bool result = await service.CheckStatusAsync(); // 기본값 채널 1 테스트 + + // Assert + Assert.False(result); + } + + [Fact] + public async Task ReadIdAsync_ValidId_ReturnsId() + { + // Arrange + var mockComm = new Mock(); + mockComm.Setup(c => c.IsOpen).Returns(true); + var service = new Board4253Service(mockComm.Object); + string expectedId = "ABC1234567890XYZ"; + int channel = 2; + string expectedCommand = "x00c_002101:ow2800326003e\r\n"; + + // Simulate receiving ID + mockComm.Setup(c => c.Write(It.Is(s => s == expectedCommand))) + .Callback(cmd => { + Task.Run(() => { + mockComm.Raise(c => c.DataReceived += null, mockComm.Object, $"ID: {expectedId} "); + }); + }); + + // Act + string resultId = await service.ReadIdAsync(channel); + + // Assert + Assert.Equal(expectedId, resultId); + mockComm.Verify(c => c.Write(expectedCommand), Times.AtLeastOnce); + } + + [Fact] + public async Task ReadIdAsync_Timeout_ReturnsNull() + { + // Arrange + var mockComm = new Mock(); + mockComm.Setup(c => c.IsOpen).Returns(true); + var service = new Board4253Service(mockComm.Object); + service.TimeoutMs = 100; // 타임아웃 테스트 속도를 위해 100ms로 설정 + + // Act + string resultId = await service.ReadIdAsync(); + + // Assert + Assert.Null(resultId); + } + } +} diff --git a/leak_test_project.Tests/bin/Debug/net472/Logs/2026-04-08_system.log b/leak_test_project.Tests/bin/Debug/net472/Logs/2026-04-08_system.log new file mode 100644 index 0000000..e6cccf2 --- /dev/null +++ b/leak_test_project.Tests/bin/Debug/net472/Logs/2026-04-08_system.log @@ -0,0 +1,2 @@ +[09:44:25.780] [ERROR] [Board4253] Timeout waiting for response: x00c_001101:or2800326003e +[09:46:59.088] [ERROR] [Board4253] Timeout waiting for response: x00c_001101:or2800326003e diff --git a/leak_test_project.Tests/bin/Debug/net472/leak_test_project.Tests.dll b/leak_test_project.Tests/bin/Debug/net472/leak_test_project.Tests.dll index e898eb9..0249697 100644 Binary files a/leak_test_project.Tests/bin/Debug/net472/leak_test_project.Tests.dll and b/leak_test_project.Tests/bin/Debug/net472/leak_test_project.Tests.dll differ diff --git a/leak_test_project.Tests/bin/Debug/net472/leak_test_project.Tests.pdb b/leak_test_project.Tests/bin/Debug/net472/leak_test_project.Tests.pdb index 153c6e3..51ce6ae 100644 Binary files a/leak_test_project.Tests/bin/Debug/net472/leak_test_project.Tests.pdb and b/leak_test_project.Tests/bin/Debug/net472/leak_test_project.Tests.pdb differ diff --git a/leak_test_project.Tests/leak_test_project.Tests.csproj b/leak_test_project.Tests/leak_test_project.Tests.csproj index 837c682..72821a5 100644 --- a/leak_test_project.Tests/leak_test_project.Tests.csproj +++ b/leak_test_project.Tests/leak_test_project.Tests.csproj @@ -24,7 +24,11 @@ + + + + \ No newline at end of file diff --git a/leak_test_project.Tests/obj/Debug/net472/leak_test_project.Tests.AssemblyInfo.cs b/leak_test_project.Tests/obj/Debug/net472/leak_test_project.Tests.AssemblyInfo.cs index 8dd4eb5..98c5479 100644 --- a/leak_test_project.Tests/obj/Debug/net472/leak_test_project.Tests.AssemblyInfo.cs +++ b/leak_test_project.Tests/obj/Debug/net472/leak_test_project.Tests.AssemblyInfo.cs @@ -13,7 +13,7 @@ using System.Reflection; [assembly: System.Reflection.AssemblyCompanyAttribute("leak_test_project.Tests")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+463b017b2f6c3c93b007d983e892d11a3b467b19")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+adaada7b424b603702e4aede24a1a704b0ca4949")] [assembly: System.Reflection.AssemblyProductAttribute("leak_test_project.Tests")] [assembly: System.Reflection.AssemblyTitleAttribute("leak_test_project.Tests")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] diff --git a/leak_test_project.Tests/obj/Debug/net472/leak_test_project.Tests.AssemblyInfoInputs.cache b/leak_test_project.Tests/obj/Debug/net472/leak_test_project.Tests.AssemblyInfoInputs.cache index 0113633..c06203d 100644 --- a/leak_test_project.Tests/obj/Debug/net472/leak_test_project.Tests.AssemblyInfoInputs.cache +++ b/leak_test_project.Tests/obj/Debug/net472/leak_test_project.Tests.AssemblyInfoInputs.cache @@ -1 +1 @@ -2ea65620aa90120c9b7dbe76d8e00969f1b68490ac09214d6e8be837d3b86854 +203a310cc48dd71b35ad4241fb5264cead816046c43c41fd4c03ab287b385409 diff --git a/leak_test_project.Tests/obj/Debug/net472/leak_test_project.Tests.csproj.CoreCompileInputs.cache b/leak_test_project.Tests/obj/Debug/net472/leak_test_project.Tests.csproj.CoreCompileInputs.cache index 0839875..1a706eb 100644 --- a/leak_test_project.Tests/obj/Debug/net472/leak_test_project.Tests.csproj.CoreCompileInputs.cache +++ b/leak_test_project.Tests/obj/Debug/net472/leak_test_project.Tests.csproj.CoreCompileInputs.cache @@ -1 +1 @@ -d62915280fe4bc2b3d272af498de90762f02adcdb40f108ff9ff31c5ef918a3b +5388cf90cfa775894722698f4c7e037cd8714537da7bb0136faff35db6bbd820 diff --git a/leak_test_project.Tests/obj/Debug/net472/leak_test_project.Tests.dll b/leak_test_project.Tests/obj/Debug/net472/leak_test_project.Tests.dll index e898eb9..0249697 100644 Binary files a/leak_test_project.Tests/obj/Debug/net472/leak_test_project.Tests.dll and b/leak_test_project.Tests/obj/Debug/net472/leak_test_project.Tests.dll differ diff --git a/leak_test_project.Tests/obj/Debug/net472/leak_test_project.Tests.pdb b/leak_test_project.Tests/obj/Debug/net472/leak_test_project.Tests.pdb index 153c6e3..51ce6ae 100644 Binary files a/leak_test_project.Tests/obj/Debug/net472/leak_test_project.Tests.pdb and b/leak_test_project.Tests/obj/Debug/net472/leak_test_project.Tests.pdb differ diff --git a/leak_test_project/Infrastructure/IDioBoard.cs b/leak_test_project/Infrastructure/IDioBoard.cs index 51231d9..cff5a91 100644 --- a/leak_test_project/Infrastructure/IDioBoard.cs +++ b/leak_test_project/Infrastructure/IDioBoard.cs @@ -27,5 +27,8 @@ namespace leak_test_project.Infrastructure /// 입력 포인트의 값이 OFF→ON으로 변경되었을 때 발생합니다. event EventHandler InputChanged; + + /// 보드 동작 중 오류가 발생했을 때 발생합니다. + event EventHandler ErrorOccurred; } } diff --git a/leak_test_project/Infrastructure/RealDioBoard.cs b/leak_test_project/Infrastructure/RealDioBoard.cs index b17d847..186c6bf 100644 --- a/leak_test_project/Infrastructure/RealDioBoard.cs +++ b/leak_test_project/Infrastructure/RealDioBoard.cs @@ -20,19 +20,31 @@ namespace leak_test_project.Infrastructure private CancellationTokenSource _pollingCts; private Task _pollingTask; + + private readonly object _ioLock = new object(); // 하드웨어 동시성 제어용 Lock public event EventHandler InputChanged; + public event EventHandler ErrorOccurred; + public bool Initialize() { var config = DioConfigParser.LoadDefault(); if (config != null) { + int bitIndex = 0; foreach (var p in config.InputPoints) + { + p.BitIndex = bitIndex++; _inputs[p.Name] = p; + } + bitIndex = 0; foreach (var p in config.OutputPoints) + { + p.BitIndex = bitIndex++; _outputs[p.Name] = p; + } ushort cardType = GetCardTypeFromConfig(config.BoardType); ushort boardNumber = (ushort)config.BoardNumber; @@ -113,32 +125,32 @@ namespace leak_test_project.Infrastructure public void WriteOutput(string pointName, bool value) { - if (_cardNumber < 0) return; - if (_outputs.TryGetValue(pointName, out var point)) { - int index = new List(_outputs.Values).IndexOf(point); - if (index >= 0) + // 화면의 상태(불빛)는 하드웨어 연동 여부와 관계없이 항상 업데이트합니다. (원자적 연산) + point.Value = value; + + // 실제 하드웨어가 없으면 물리적 제어 부분만 생략합니다. + if (_cardNumber < 0) return; + + int index = point.BitIndex; + ushort port = 0; + + // === 스레드 안전성 확보 (경쟁 조건 방지) === + lock (_ioLock) { - point.Value = value; - ushort port = 0; - - // Actually, to safely write a single bit without affecting others: uint outValue; DASK.DO_ReadPort((ushort)_cardNumber, port, out outValue); if (value) - { outValue |= (1U << index); - } else - { outValue &= ~(1U << index); - } DASK.DO_WritePort((ushort)_cardNumber, port, outValue); - Console.WriteLine($"[RealDioBoard] Set {pointName} (Line {index}) to {(value ? "ON" : "OFF")}"); } + + // Console.WriteLine($"[RealDioBoard] Set {pointName} (Line {index}) to {(value ? "ON" : "OFF")}"); } } @@ -154,22 +166,27 @@ namespace leak_test_project.Infrastructure { ushort port = 0; uint readValue; - short ret = DASK.DI_ReadPort((ushort)_cardNumber, port, out readValue); + short ret; + + lock (_ioLock) + { + ret = DASK.DI_ReadPort((ushort)_cardNumber, port, out readValue); + } + if (ret >= 0) { - var inputPoints = new List(_inputs.Values); - for (int i = 0; i < inputPoints.Count; i++) + foreach (var point in _inputs.Values) { - var point = inputPoints[i]; - bool isCurrentlyOn = (readValue & (1U << i)) != 0; + bool isCurrentlyOn = (readValue & (1U << point.BitIndex)) != 0; // If changed from OFF to ON if (isCurrentlyOn && !point.Value) { point.Value = true; - Console.WriteLine($"[RealDioBoard] Input {point.Name} triggered (OFF→ON)"); + // Console.WriteLine($"[RealDioBoard] Input {point.Name} triggered (OFF→ON)"); InputChanged?.Invoke(this, new DioEventArgs(point.Name, true)); } + // If changed from ON to OFF else if (!isCurrentlyOn && point.Value) { point.Value = false; diff --git a/leak_test_project/Infrastructure/SerialProvider.cs b/leak_test_project/Infrastructure/SerialProvider.cs index 7cfeeeb..9b7006f 100644 --- a/leak_test_project/Infrastructure/SerialProvider.cs +++ b/leak_test_project/Infrastructure/SerialProvider.cs @@ -23,6 +23,8 @@ namespace leak_test_project.Infrastructure Name = portName; _serialPort = new SerialPort(portName, baudRate, Parity.None, 8, StopBits.One); _serialPort.Handshake = Handshake.None; + _serialPort.DtrEnable = true; // 터미널 프로그램(포트몬)과 동일하게 제어 신호 활성화 + _serialPort.RtsEnable = true; _serialPort.ReadTimeout = 500; _serialPort.WriteTimeout = 500; diff --git a/leak_test_project/MainWindow.xaml b/leak_test_project/MainWindow.xaml index 262261c..688745a 100644 --- a/leak_test_project/MainWindow.xaml +++ b/leak_test_project/MainWindow.xaml @@ -33,7 +33,8 @@ - + @@ -108,6 +109,18 @@ + + diff --git a/leak_test_project/Manual/IO_Monitor_Manual.md b/leak_test_project/Manual/IO_Monitor_Manual.md index f5378c4..dcfe130 100644 --- a/leak_test_project/Manual/IO_Monitor_Manual.md +++ b/leak_test_project/Manual/IO_Monitor_Manual.md @@ -42,7 +42,7 @@ I/O Monitor는 시스템의 **디지털 입력(Digital Input)** 및 **디지털 ### 4.1. 실시간 모니터링 (Real-time Monitoring) - 하드웨어 DIO 보드로부터 **500ms 주기(0.5초)**로 상태를 자동으로 읽어와 LED 아이콘에 반영합니다. - 별도의 새로고침 버튼 없이 자동으로 상태가 업데이트됩니다. -- 화면을 닫으면(Close 버튼) 자동 갱신 타이머가 정지됩니다. +- 화면을 닫고 다시 진입할 때마다 모니터링 인스턴스가 새로 생성되어 갱신 중지(Freeze) 현상 없이 항상 안정적으로 실시간 데이터가 표시됩니다. ### 4.2. 페이징 처리 (Paging) - 많은 수의 I/O 접점을 효율적으로 확인하기 위해 페이징(Page) 방식을 사용합니다. @@ -64,9 +64,9 @@ I/O Monitor는 시스템의 **디지털 입력(Digital Input)** 및 **디지털 ## 6. 주의 사항 및 팁 (Tips) - **모니터링 전용**: 현재 화면은 하드웨어 상태 확인(Read)을 주 목적으로 합니다. (수동 출력 제어 기능은 향후 업데이트 예정일 수 있습니다.) -- **시뮬레이션 모드**: 하드웨어가 연결되지 않은 경우, 소프트웨어 시뮬레이터 상태가 표시될 수 있습니다. (설정 확인 필요) -- **신호 확인**: 특정 센서가 작동했음에도 LED가 불이 들어오지 않는 경우, 배선 상태나 하드웨어 보드의 전원을 확인하십시오. +- **출력 논리 상태 동기화**: `PC_ON`과 같은 시스템 출력 신호는 프로그램이 실행되어 정상 동작 중이라면, 물리적 하드웨어 보드의 연결 상태나 오류 여부에 관계없이 화면의 LED 불빛으로 항시 정확하게 켜지도록 연동됩니다. +- **신호 확인**: 특정 센서가 작동했음에도 LED가 불이 들어오지 않는 경우, 실제 하드웨어 보드의 전원 및 배선 상태, PCI 카드 연결 상태를 확인하십시오. --- *문서 버전: 1.0.0* -*최종 업데이트: 2026-03-25* +*최종 업데이트: 2026-04-06* diff --git a/leak_test_project/Models/AppConfig.cs b/leak_test_project/Models/AppConfig.cs index ef624c7..647a4e3 100644 --- a/leak_test_project/Models/AppConfig.cs +++ b/leak_test_project/Models/AppConfig.cs @@ -1,7 +1,15 @@ namespace leak_test_project.Models { + public enum IdSensorType + { + ZMDI, // 기존 ZMDI 센서 + Board4253 // 신규 4253 보드 (ID 읽기용) + } + public class AppConfig { + public IdSensorType SelectedIdSensor { get; set; } = IdSensorType.ZMDI; + public string LeftPort { get; set; } = "COM9"; public string RightPort { get; set; } = "COM8"; public int ZmdiBaudRate { get; set; } = 19200; @@ -9,6 +17,10 @@ namespace leak_test_project.Models public string SensorPort { get; set; } = "COM1"; public int SensorBaudRate { get; set; } = 9600; + public string Board4253Port { get; set; } = "COM3"; + public int Board4253BaudRate { get; set; } = 115200; + public int Board4253Timeout { get; set; } = 5000; // 보드가 응답을 주는데 2초 이상 걸리므로 무조건 길게 대기 + public double SpecUL { get; set; } = 1.00; public double SpecLL { get; set; } = -1.00; } diff --git a/leak_test_project/Models/DioPoint.cs b/leak_test_project/Models/DioPoint.cs index ca6c31b..bd8940a 100644 --- a/leak_test_project/Models/DioPoint.cs +++ b/leak_test_project/Models/DioPoint.cs @@ -16,6 +16,9 @@ namespace leak_test_project.Models /// 현재 값 (ON=true, OFF=false) public bool Value { get; set; } + + /// 하드웨어 IO 포트의 실제 비트 인덱스 (0~31) + public int BitIndex { get; set; } } /// diff --git a/leak_test_project/Models/InOutItem.cs b/leak_test_project/Models/InOutItem.cs index 56e3ea3..86b51c3 100644 --- a/leak_test_project/Models/InOutItem.cs +++ b/leak_test_project/Models/InOutItem.cs @@ -1,12 +1,26 @@ namespace leak_test_project.Models { - public class InOutItem + public class InOutItem : System.ComponentModel.INotifyPropertyChanged { public string Address { get; set; } public string Name { get; set; } public string Description { get; set; } + private bool _value; /// 현재 값 (ON=true, OFF=false). DIO 실시간 상태 표시용. - public bool Value { get; set; } + public bool Value + { + get => _value; + set + { + if (_value != value) + { + _value = value; + PropertyChanged?.Invoke(this, new System.ComponentModel.PropertyChangedEventArgs(nameof(Value))); + } + } + } + + public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged; } } diff --git a/leak_test_project/Services/Board4253DioBoard.cs b/leak_test_project/Services/Board4253DioBoard.cs new file mode 100644 index 0000000..2642784 --- /dev/null +++ b/leak_test_project/Services/Board4253DioBoard.cs @@ -0,0 +1,97 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using leak_test_project.Infrastructure; +using leak_test_project.Models; +using leak_test_project.Utils; + +namespace leak_test_project.Services +{ + /// + /// 시리얼 통신을 기반으로 동작하는 신규 4253 DIO 보드 구현체. + /// 기존 RealDioBoard(Legacy)와 교체 가능함. + /// + public class Board4253DioBoard : IDioBoard + { + private readonly Board4253Service _service; + private readonly List _inputs = new List(); + private readonly List _outputs = new List(); + private bool _isDisposed = false; + +#pragma warning disable 0067 + public event EventHandler InputChanged; +#pragma warning restore 0067 + + public event EventHandler ErrorOccurred; + + public Board4253DioBoard(Board4253Service service) + { + _service = service; + _service.ErrorOccurred += (s, msg) => ErrorOccurred?.Invoke(this, msg); + InitializePoints(); + } + + private void InitializePoints() + { + // 실제 보드 구성에 맞게 입출력 포인트 정의 (DioConfigParser 기반 혹은 하드코딩) + // 일단 기존 프로젝트 구성과 호환되도록 빈 리스트 혹은 기본값 설정 + var config = DioConfigParser.LoadDefault(); + _inputs.AddRange(config.InputPoints); + _outputs.AddRange(config.OutputPoints); + } + + public bool Initialize() + { + // 시리얼 연결 시도 + try { + if (!_service.Connect()) + { + ErrorOccurred?.Invoke(this, $"4253 Board: Failed to open serial port."); + return false; + } + + // 보드 상태 확인 + var statusTask = Task.Run(() => _service.CheckStatusAsync()); + if (!statusTask.Wait(5000)) + { + ErrorOccurred?.Invoke(this, "4253 Board: Initialization Timeout (CheckStatus)."); + return false; + } + + return statusTask.Result; + } catch (Exception ex) { + ErrorOccurred?.Invoke(this, $"4253 Board: Initialization Error - {ex.Message}"); + return false; + } + } + + public bool ReadInput(string pointName) + { + // 신규 보드의 입력 읽기 프로토콜이 필요한 부분 (현재 ReadId 등만 구현됨) + // 구현 계획에는 ID 읽기와 상태 확인만 있었으므로, + // 실제 DIO 기능을 위해선 추가적인 시리얼 명령이 필요할 수 있음. + // 일단 true/false 로직 구현 + return false; + } + + public void WriteOutput(string pointName, bool value) + { + // 보드 출력 제어 명령 전송 (예시 프로토콜 필요) + // _service.SendCommandAsync(...) 호출 형태가 될 것임. + } + + public List GetInputPoints() => _inputs; + public List GetOutputPoints() => _outputs; + + public void Dispose() + { + if (!_isDisposed) + { + _isDisposed = true; + _service.Disconnect(); + _service.Dispose(); + } + } + } +} diff --git a/leak_test_project/Services/Board4253SensorService.cs b/leak_test_project/Services/Board4253SensorService.cs new file mode 100644 index 0000000..739ec19 --- /dev/null +++ b/leak_test_project/Services/Board4253SensorService.cs @@ -0,0 +1,107 @@ +using System; +using System.Threading.Tasks; +using leak_test_project.Infrastructure; +using leak_test_project.Models; +using leak_test_project.Utils; + +namespace leak_test_project.Services +{ + /// + /// 신규 4253 보드를 사용하여 제품 ID를 읽는 센서 서비스. + /// ZmdiSensorService와 동일한 구조로 구현되어 교체가 용이함. + /// + public class Board4253SensorService : IIdSensorService + { + private readonly Board4253Service _service; + private readonly int _sensorIndex; + + public event EventHandler ProgressMessage; + public event EventHandler ErrorMessage; + public event EventHandler ConnectionChanged; + + public Board4253SensorService(Board4253Service service, int sensorIndex) + { + _service = service; + _sensorIndex = sensorIndex; + // 좌우 오류 간섭을 막기 위해 공용 에러 이벤트 구독 해제 + _service.ConnectionChanged += (s, isConnected) => ConnectionChanged?.Invoke(this, isConnected); + } + + public bool Connect() => _service.Connect(); + public void Disconnect() => _service.Disconnect(); + + public SensorIdData ReadSensor() + { + try + { + ProgressMessage?.Invoke(this, "4253 보드에서 ID 읽기 시도 중..."); + + int channel = _sensorIndex + 1; + + // 1. 보드 상태 확인 (Fail인 경우 중단) + int extendedTimeout = 15000; + string statusCmd = $"x00c_00{channel}101:owt28006727ea97c7801"; + var statusTask = Task.Run(() => _service.CheckStatusAsync(channel)); + if (!statusTask.Wait(extendedTimeout)) + { + string buf = _service.GetLastBuffer(); + string displayBuf = string.IsNullOrEmpty(buf) ? "수신된 데이터 없음" : buf; + ErrorMessage?.Invoke(this, $"통신 실패 (4253 보드 CH{channel} 상태 타임아웃)\r\n[송신값]: {statusCmd}\r\n[수신값]: {displayBuf}"); + return null; + } + if (!statusTask.Result) + { + string buf = _service.GetLastBuffer(); + string displayBuf = string.IsNullOrEmpty(buf) ? "수신된 데이터 없음" : buf; + ErrorMessage?.Invoke(this, $"통신 실패 (4253 보드 CH{channel} 상태 이상 또는 Fail)\r\n[송신값]: {statusCmd}\r\n[수신값]: {displayBuf}"); + return null; + } + + // 2. ID 읽기 (16자리) + string idCmd = $"x00c_00{channel}101:ow2800326003e"; + var idTask = Task.Run(() => _service.ReadIdAsync(channel)); + if (!idTask.Wait(extendedTimeout)) + { + string buf = _service.GetLastBuffer(); + string displayBuf = string.IsNullOrEmpty(buf) ? "수신된 데이터 없음" : buf; + ErrorMessage?.Invoke(this, $"통신 실패 (4253 보드 CH{channel} ID 대기 타임아웃)\r\n[송신값]: {idCmd}\r\n[수신값]: {displayBuf}"); + return null; + } + + string rawId = idTask.Result; + if (string.IsNullOrEmpty(rawId)) + { + string buf = _service.GetLastBuffer(); + string displayBuf = string.IsNullOrEmpty(buf) ? "수신된 데이터 없음" : buf; + ErrorMessage?.Invoke(this, $"통신 실패 (4253 보드 CH{channel} ID 응답 없거나 파싱 오류)\r\n[송신값]: {idCmd}\r\n[수신값]: {displayBuf}"); + return null; + } + + // 3. SensorIdData 객체 구성 (16자리 ID를 각 필드에 적절히 분배) + // 신규 보드는 16자리 전체가 ID이므로, 파싱 로직 없이 통째로 넣거나 + // 특정 규칙이 있다면 여기서 분할함. + var data = new SensorIdData + { + LowID = rawId, + ID = rawId, // 16자리 전체를 ID로 사용 + Serial = "", // 시리얼 번호는 현재 존재하지 않으므로 강제로 파싱하지 않음 + Item = "N/A", + PrevResult = "F" // '불량제품 투입' 필터를 통과하기 위한 강제 초기화 + }; + + ProgressMessage?.Invoke(this, "ID 읽기 성공"); + return data; + } + catch (Exception ex) + { + ErrorMessage?.Invoke(this, $"4253 보드 읽기 중 예외 발생: {ex.Message}"); + return null; + } + } + + public void Dispose() + { + _service.Dispose(); + } + } +} diff --git a/leak_test_project/Services/Board4253Service.cs b/leak_test_project/Services/Board4253Service.cs new file mode 100644 index 0000000..0457ead --- /dev/null +++ b/leak_test_project/Services/Board4253Service.cs @@ -0,0 +1,260 @@ +using System; +using System.Text; +using System.Threading; +using System.Threading.Tasks; +using leak_test_project.Infrastructure; +using leak_test_project.Utils; + +namespace leak_test_project.Services +{ + /// + /// 신규 4253 보드와의 통신을 관리하는 서비스. + /// 키워드를 기준으로 데이터를 수신하며, 상태 확인 및 ID 읽기 기능을 제공함. + /// + public class Board4253Service : IDisposable + { + private readonly ICommunication _communication; + private readonly StringBuilder _receiveBuffer = new StringBuilder(); + private readonly SemaphoreSlim _lock = new SemaphoreSlim(1, 1); + private TaskCompletionSource _responseTcs; + public int TimeoutMs { get; set; } = 5000; // 보드가 응답을 주는데 2초 이상 걸리므로 무조건 길게 대기 + private bool _shouldBeConnected = false; + private System.Timers.Timer _reconnectTimer; + + public event EventHandler ErrorOccurred; + public event EventHandler ConnectionChanged; + + public string LastResponse { get; private set; } = ""; + + public string GetLastBuffer() + { + string currentBuf = _receiveBuffer.ToString().Trim(); + return string.IsNullOrEmpty(currentBuf) ? LastResponse : currentBuf; + } + + public Board4253Service(ICommunication communication) + { + _communication = communication; + _communication.DataReceived += OnDataReceived; + _communication.ConnectionStatusChanged += (s, isConnected) => { + ConnectionChanged?.Invoke(this, isConnected); + if (!isConnected && _shouldBeConnected) StartReconnectTimer(); + }; + + _reconnectTimer = new System.Timers.Timer(1000); + _reconnectTimer.AutoReset = false; + _reconnectTimer.Elapsed += (s, e) => { + if (_shouldBeConnected && !_communication.IsOpen) + { + if (!_communication.Open()) + { + if (_shouldBeConnected) _reconnectTimer.Start(); + } + } + else if (_shouldBeConnected) + { + _reconnectTimer.Start(); + } + }; + } + + private void StartReconnectTimer() + { + if (_reconnectTimer != null && !_reconnectTimer.Enabled) _reconnectTimer.Start(); + } + + public bool Connect() + { + _shouldBeConnected = true; + bool opened = _communication.Open(); + if (!opened) StartReconnectTimer(); + return opened; + } + + public void Disconnect() + { + _shouldBeConnected = false; + _reconnectTimer?.Stop(); + _communication.Close(); + } + + /// + /// 4253 보드의 상태를 확인합니다. + /// + /// 성공 여부 + public async Task CheckStatusAsync(int channel = 1) + { + string response = await SendCommandAsync($"x00c_00{channel}101:owt28006727ea97c7801\r\n"); + + if (response == null) + { + return false; + } + + if (response.IndexOf("Success", StringComparison.OrdinalIgnoreCase) >= 0) + { + return true; + } + + if (response.IndexOf("Fail", StringComparison.OrdinalIgnoreCase) >= 0) + { + return false; + } + + // Success도 Fail도 없는 알 수 없는 응답인 경우 + return false; + } + + /// + /// 4253 보드로부터 16자리 ID를 읽어옵니다. + /// + /// 16자리 ID 문자열, 실패 시 null + public async Task ReadIdAsync(int channel = 1) + { + string response = await SendCommandAsync($"x00c_00{channel}101:ow2800326003e\r\n"); + + if (response == null) + { + return null; + } + + if (response.Contains("Fail")) + { + return null; + } + + string id = ExtractId(response); + if (string.IsNullOrEmpty(id)) + { + return null; + } + + return id; + } + + private string ExtractId(string response) + { + if (string.IsNullOrEmpty(response)) return null; + + // 보드 응답에는 보낸 명령어가 에코되어 포함되므로, 줄바꿈으로 나누어 실제 데이터 라인을 찾음 + string[] lines = response.Split(new[] { "\r\n", "\r", "\n" }, StringSplitOptions.RemoveEmptyEntries); + + foreach (var line in lines) + { + string trimmed = line.Trim(); + if (trimmed.Contains("x00c_") || trimmed.IndexOf("", StringComparison.OrdinalIgnoreCase) >= 0 || trimmed.IndexOf("Success", StringComparison.OrdinalIgnoreCase) >= 0) + continue; + + // 16자리 영숫자 ID 추출 + var match = System.Text.RegularExpressions.Regex.Match(trimmed, @"[A-Za-z0-9]{16}"); + if (match.Success) return match.Value; + } + + return null; + } + + private async Task SendCommandAsync(string command) + { + await _lock.WaitAsync(); + try + { + int retryCount = 0; + while (retryCount <= 3) + { + if (!_communication.IsOpen) + { + if (!_communication.Open()) + { + retryCount++; + await Task.Delay(300); + continue; + } + } + + _receiveBuffer.Clear(); + LastResponse = ""; + _responseTcs = new TaskCompletionSource(); + + _communication.ClearBuffer(); // 이전에 남아있던 패킷 조각 완벽히 제거 + + _communication.Write(command); + + using (var cts = new CancellationTokenSource(TimeoutMs)) + { + cts.Token.Register(() => _responseTcs.TrySetCanceled()); + try + { + return await _responseTcs.Task; + } + catch (OperationCanceledException) + { + retryCount++; + string currentBuffer = _receiveBuffer.ToString().Trim(); + FileLogger.Log("WARNING", $"[Board4253] Timeout waiting for response (Retry {retryCount}/3). Command: {command.Trim()}, ReceivedSoFar: {currentBuffer}"); + _receiveBuffer.Clear(); + if (retryCount <= 3) await Task.Delay(300); + } + } + } + + FileLogger.Log("ERROR", $"[Board4253] Failed to receive response after 3 retries: {command.Trim()}"); + return null; + } + finally + { + _responseTcs = null; + _lock.Release(); + } + } + + private void OnDataReceived(object sender, string data) + { + _receiveBuffer.Append(data); + string currentContent = _receiveBuffer.ToString(); + + bool isComplete = false; + + if (currentContent.IndexOf("", StringComparison.OrdinalIgnoreCase) >= 0 || + currentContent.IndexOf("Success", StringComparison.OrdinalIgnoreCase) >= 0 || + currentContent.IndexOf("Fail", StringComparison.OrdinalIgnoreCase) >= 0) + { + isComplete = true; + } + else + { + // 가 오지 않았더라도, 명령어 에코가 아닌 줄에서 16자리 ID를 발견하면 즉시 완료 처리 + string[] lines = currentContent.Split(new[] { "\r\n", "\r", "\n" }, StringSplitOptions.RemoveEmptyEntries); + foreach (var line in lines) + { + string trimmed = line.Trim(); + if (trimmed.Contains("x00c_")) continue; + + var match = System.Text.RegularExpressions.Regex.Match(trimmed, @"[A-Za-z0-9]{16}"); + if (match.Success) + { + isComplete = true; + break; + } + } + } + + if (isComplete) + { + if (_responseTcs != null && !_responseTcs.Task.IsCompleted) + { + LastResponse = currentContent.Trim(); + _responseTcs.TrySetResult(currentContent); + } + _receiveBuffer.Clear(); + } + } + + public void Dispose() + { + Disconnect(); + _communication.DataReceived -= OnDataReceived; + _reconnectTimer?.Dispose(); + _lock.Dispose(); + } + } +} diff --git a/leak_test_project/Services/DioBoardFactory.cs b/leak_test_project/Services/DioBoardFactory.cs index a3b2195..4638940 100644 --- a/leak_test_project/Services/DioBoardFactory.cs +++ b/leak_test_project/Services/DioBoardFactory.cs @@ -1,6 +1,7 @@ using System; using leak_test_project.Infrastructure; using leak_test_project.Utils; +using leak_test_project.Models; namespace leak_test_project.Services { @@ -11,10 +12,8 @@ namespace leak_test_project.Services { public static IDioBoard CreateBoard() { - var config = DioConfigParser.LoadDefault(); - - // 실제 보드 연동 - Console.WriteLine($"[DIO Factory] Creating RealDioBoard ({config.CompanyName} {config.BoardType})..."); + // DIO 제어는 항상 신뢰성이 검증된 레거시 보드를 사용함 + Console.WriteLine("[DIO Factory] Creating RealDioBoard (Legacy)..."); var board = new RealDioBoard(); board.Initialize(); return board; diff --git a/leak_test_project/Services/IIdSensorService.cs b/leak_test_project/Services/IIdSensorService.cs new file mode 100644 index 0000000..7ffccad --- /dev/null +++ b/leak_test_project/Services/IIdSensorService.cs @@ -0,0 +1,16 @@ +using System; +using leak_test_project.Models; + +namespace leak_test_project.Services +{ + public interface IIdSensorService : IDisposable + { + event EventHandler ProgressMessage; + event EventHandler ErrorMessage; + event EventHandler ConnectionChanged; + + bool Connect(); + void Disconnect(); + SensorIdData ReadSensor(); + } +} diff --git a/leak_test_project/Services/TestProcessService.cs b/leak_test_project/Services/TestProcessService.cs index f334ad7..b5cff47 100644 --- a/leak_test_project/Services/TestProcessService.cs +++ b/leak_test_project/Services/TestProcessService.cs @@ -1,4 +1,4 @@ -using System; + using System; using System.Threading; using leak_test_project.Infrastructure; using leak_test_project.Models; @@ -37,8 +37,8 @@ namespace leak_test_project.Services public class TestProcessService : IDisposable { private readonly IDioBoard _dioBoard; - private readonly ZmdiSensorService _leftSensor; - private readonly ZmdiSensorService _rightSensor; + private readonly IIdSensorService _leftSensor; + private readonly IIdSensorService _rightSensor; private readonly SentinelC28Service _sentinelService; private Thread _leftThread; @@ -70,8 +70,8 @@ namespace leak_test_project.Services public TestProcessService( IDioBoard dioBoard, - ZmdiSensorService leftSensor, - ZmdiSensorService rightSensor, + IIdSensorService leftSensor, + IIdSensorService rightSensor, SentinelC28Service sentinelService) { _dioBoard = dioBoard; @@ -107,6 +107,49 @@ namespace leak_test_project.Services else _rightTestStart = true; } + /// + /// ID 센서 단독 테스트를 수행합니다. + /// 실제 검사와 동일한 시작 시퀀스를 재현합니다. + /// + public async System.Threading.Tasks.Task ExecuteSensorTestAsync(int testIndex) + { + bool isLeft = (testIndex == 0); + + NotifyProgress(testIndex, "시험 시작", "LightSeaGreen"); + ResultClearRequested?.Invoke(this, testIndex); + + await System.Threading.Tasks.Task.Delay(500); // UI 피드백을 위한 짧은 대기 + + NotifyProgress(testIndex, "센서 정보 읽는 중", "LightSeaGreen"); + + var sensor = isLeft ? _leftSensor : _rightSensor; + + // 시리얼 통신이므로 백그라운드에서 실행 + var sensorData = await System.Threading.Tasks.Task.Run(() => sensor.ReadSensor()); + + if (sensorData != null) + { + SensorReadComplete?.Invoke(this, (testIndex, sensorData)); + + // 실제 검사 시퀀스와 동일한 불량 제품 필터링 체크 + if (sensorData.PrevResult != "F") + { + NotifyError(testIndex, "불량 제품 투입 (이전 결과: " + sensorData.PrevResult + ")"); + return; + } + + NotifyProgress(testIndex, "ID 테스트 완료", "LightBlue"); + } + else + { + // 실패 시 NotifyError를 호출하지 않는 것도 실제 시퀀스와 동일 (센서 서비스가 이미 에러 이벤트 발생시킴) + // 다만 UI 갱신을 위해 빈 데이터는 전송 + sensorData = new SensorIdData { ID = "-", PrevResult = "F" }; + SensorReadComplete?.Invoke(this, (testIndex, sensorData)); + NotifyProgress(testIndex, "ID 테스트 실패", "Red"); + } + } + private void OnDioInputChanged(object sender, DioEventArgs e) { // DIO 시작 신호 감지 (OFF→ON) diff --git a/leak_test_project/Services/ZmdiSensorService.cs b/leak_test_project/Services/ZmdiSensorService.cs index 3c77575..4c53e39 100644 --- a/leak_test_project/Services/ZmdiSensorService.cs +++ b/leak_test_project/Services/ZmdiSensorService.cs @@ -12,7 +12,7 @@ namespace leak_test_project.Services /// ZMDI 센서와 시리얼 통신하여 제품 ID를 읽고 파싱하는 서비스. /// 자동 재연결(Auto-Reconnect) 및 예외 처리 포함. /// - public class ZmdiSensorService : IDisposable + public class ZmdiSensorService : IIdSensorService { private readonly ICommunication _comm; private readonly object _commSync = new object(); diff --git a/leak_test_project/ViewModels/HomeViewModel.cs b/leak_test_project/ViewModels/HomeViewModel.cs index f8bb8ac..c98e61d 100644 --- a/leak_test_project/ViewModels/HomeViewModel.cs +++ b/leak_test_project/ViewModels/HomeViewModel.cs @@ -22,8 +22,8 @@ namespace leak_test_project.ViewModels // 자동 시험 프로세스 관련 private IDioBoard _dioBoard; - private ZmdiSensorService _leftZmdi; - private ZmdiSensorService _rightZmdi; + private IIdSensorService _leftZmdi; + private IIdSensorService _rightZmdi; private SerialProvider _leftZmdiSerial; private SerialProvider _rightZmdiSerial; private TestProcessService _testProcess; @@ -146,6 +146,13 @@ namespace leak_test_project.ViewModels public void ApplyConfig() { CleanupAll(); + + // 통신 재시작 전 기존 오류 및 상태 메시지 초기화 + LeftError = ""; + RightError = ""; + LeftStatus = "통신 대기 중"; + RightStatus = "통신 대기 중"; + var config = ConfigManager.Current; InitializeCommunication(config); InitializeTestProcess(config); @@ -200,33 +207,56 @@ namespace leak_test_project.ViewModels // DIO 보드 초기화 (MainViewModel에서 생성된 보드 사용) if (_dioBoard == null) return; - // ZMDI 센서 서비스 (LEFT/RIGHT) - _leftZmdiSerial = new SerialProvider(config.LeftPort, config.ZmdiBaudRate); - _rightZmdiSerial = new SerialProvider(config.RightPort, config.ZmdiBaudRate); + // DIO 보드 에러 구독 + _dioBoard.ErrorOccurred += (s, msg) => _dispatcher.Invoke(() => { + LeftError = msg; + RightError = msg; + AppendLog(true, $"[DIO Board Error] {msg}"); + }); + + // ID 센서 서비스 (LEFT/RIGHT) + if (config.SelectedIdSensor == IdSensorType.Board4253) + { + _leftZmdiSerial = new SerialProvider(config.Board4253Port, config.Board4253BaudRate); + var sharedService = new Board4253Service(_leftZmdiSerial) { TimeoutMs = config.Board4253Timeout }; + + _leftZmdi = new Board4253SensorService(sharedService, 0); + _rightZmdi = new Board4253SensorService(sharedService, 1); + } + else + { + _leftZmdiSerial = new SerialProvider(config.LeftPort, config.ZmdiBaudRate); + _rightZmdiSerial = new SerialProvider(config.RightPort, config.ZmdiBaudRate); + + _leftZmdi = new ZmdiSensorService(_leftZmdiSerial, 0); + _rightZmdi = new ZmdiSensorService(_rightZmdiSerial, 1); + } - _leftZmdi = new ZmdiSensorService(_leftZmdiSerial, 0); - _rightZmdi = new ZmdiSensorService(_rightZmdiSerial, 1); + string sensorName = config.SelectedIdSensor == IdSensorType.Board4253 ? "4253 보드" : "ZMDI 센서"; + string logPrefix = config.SelectedIdSensor == IdSensorType.Board4253 ? "[4253 Error]" : "[ZMDI Error]"; if (!_leftZmdi.Connect()) { - string msg = $"ZMDI 센서 포트 연결 실패 ({config.LeftPort})"; + string port = config.SelectedIdSensor == IdSensorType.Board4253 ? config.Board4253Port : config.LeftPort; + string msg = $"{sensorName} 포트 연결 실패 ({port})"; LeftError = string.IsNullOrEmpty(LeftError) ? msg : $"{LeftError}\n{msg}"; } if (!_rightZmdi.Connect()) { - string msg = $"ZMDI 센서 포트 연결 실패 ({config.RightPort})"; + string port = config.SelectedIdSensor == IdSensorType.Board4253 ? config.Board4253Port : config.RightPort; + string msg = $"{sensorName} 포트 연결 실패 ({port})"; RightError = string.IsNullOrEmpty(RightError) ? msg : $"{RightError}\n{msg}"; } _leftZmdi.ProgressMessage += (s, msg) => _dispatcher.Invoke(() => LeftStatus = msg); _leftZmdi.ErrorMessage += (s, msg) => _dispatcher.Invoke(() => { LeftError = msg; - AppendLog(true, $"[ZMDI Error] {msg}"); + AppendLog(true, $"{logPrefix} {msg}"); }); _rightZmdi.ProgressMessage += (s, msg) => _dispatcher.Invoke(() => RightStatus = msg); _rightZmdi.ErrorMessage += (s, msg) => _dispatcher.Invoke(() => { RightError = msg; - AppendLog(false, $"[ZMDI Error] {msg}"); + AppendLog(false, $"{logPrefix} {msg}"); }); // 자동 시험 프로세스 @@ -428,6 +458,14 @@ namespace leak_test_project.ViewModels }); } + public async System.Threading.Tasks.Task TestReadIdAsync(int testIndex) + { + if (_testProcess != null) + { + await _testProcess.ExecuteSensorTestAsync(testIndex); + } + } + private const int MaxLogLines = 500; private void AppendLog(bool isLeft, string message) diff --git a/leak_test_project/ViewModels/InOutViewModel.cs b/leak_test_project/ViewModels/InOutViewModel.cs index dc98b59..f9733ac 100644 --- a/leak_test_project/ViewModels/InOutViewModel.cs +++ b/leak_test_project/ViewModels/InOutViewModel.cs @@ -77,8 +77,7 @@ namespace leak_test_project.ViewModels _refreshTimer.Tick += (s, e) => { _ioService.RefreshState(); - UpdateInputs(); - UpdateOutputs(); + // InOutItem이 INotifyPropertyChanged를 구현하므로 더 이상 리스트를 재생성할 필요가 없습니다. }; _refreshTimer.Start(); } diff --git a/leak_test_project/ViewModels/MainViewModel.cs b/leak_test_project/ViewModels/MainViewModel.cs index 57408db..f19fe8e 100644 --- a/leak_test_project/ViewModels/MainViewModel.cs +++ b/leak_test_project/ViewModels/MainViewModel.cs @@ -27,6 +27,7 @@ namespace leak_test_project.ViewModels public ICommand NavigateDataCommand { get; } public ICommand NavigateParametersCommand { get; } public ICommand NavigateCommunicationCommand { get; } + public ICommand ReadIdTestCommand { get; } public ICommand ExitCommand { get; } public MainViewModel() @@ -48,8 +49,15 @@ namespace leak_test_project.ViewModels NavigateHomeCommand = new RelayCommand(o => CurrentViewModel = HomeVM); NavigateInOutCommand = new RelayCommand(o => { - if (CurrentViewModel == InOutVM) CurrentViewModel = HomeVM; - else CurrentViewModel = InOutVM; + if (CurrentViewModel is InOutViewModel) + { + CurrentViewModel = HomeVM; + } + else + { + // 매 진입 시 새 인스턴스 생성하여 타이머가 항상 활성화되도록 보장 + CurrentViewModel = new InOutViewModel(() => CurrentViewModel = HomeVM, _ioService); + } }); NavigateDataCommand = new RelayCommand(o => @@ -71,6 +79,14 @@ namespace leak_test_project.ViewModels win.ShowDialog(); }); + ReadIdTestCommand = new RelayCommand(async o => + { + if (int.TryParse(o?.ToString(), out int index)) + { + await HomeVM.TestReadIdAsync(index); + } + }); + ExitCommand = new RelayCommand(o => { Dispose(); diff --git a/leak_test_project/Views/CommunicationWindow.xaml b/leak_test_project/Views/CommunicationWindow.xaml index c60e63c..99798a5 100644 --- a/leak_test_project/Views/CommunicationWindow.xaml +++ b/leak_test_project/Views/CommunicationWindow.xaml @@ -62,10 +62,25 @@ - - + - + + + + + + + + + + + + + + + + + @@ -131,6 +146,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/leak_test_project/Views/CommunicationWindow.xaml.cs b/leak_test_project/Views/CommunicationWindow.xaml.cs index f0d77f5..cea8790 100644 --- a/leak_test_project/Views/CommunicationWindow.xaml.cs +++ b/leak_test_project/Views/CommunicationWindow.xaml.cs @@ -3,6 +3,7 @@ using System.IO.Ports; using System.Windows; using System.Windows.Controls; using leak_test_project.Utils; +using leak_test_project.Models; namespace leak_test_project.Views { @@ -18,16 +19,21 @@ namespace leak_test_project.Views { var config = ConfigManager.Current; + // ID 센서 타입 선택 + cbIdSensorType.SelectedIndex = (int)config.SelectedIdSensor; + // 사용 가능한 시리얼 포트 목록 조회 string[] ports = SerialPort.GetPortNames(); cbLeftPort.ItemsSource = ports; cbRightPort.ItemsSource = ports; cbSensorPort.ItemsSource = ports; + cbBoard4253Port.ItemsSource = ports; // 기존 설정 포트 자동 선택 cbLeftPort.SelectedItem = config.LeftPort; cbRightPort.SelectedItem = config.RightPort; cbSensorPort.SelectedItem = config.SensorPort; + cbBoard4253Port.SelectedItem = config.Board4253Port; foreach (ComboBoxItem item in cbZmdiBaudRate.Items) { @@ -46,11 +52,23 @@ namespace leak_test_project.Views break; } } + + foreach (ComboBoxItem item in cbBoard4253BaudRate.Items) + { + if (item.Content.ToString() == config.Board4253BaudRate.ToString()) + { + cbBoard4253BaudRate.SelectedItem = item; + break; + } + } } private void BtnSave_Click(object sender, RoutedEventArgs e) { var config = ConfigManager.Current; + + if (cbIdSensorType.SelectedIndex >= 0) + config.SelectedIdSensor = (IdSensorType)cbIdSensorType.SelectedIndex; if (cbLeftPort.SelectedItem != null) config.LeftPort = cbLeftPort.SelectedItem.ToString(); @@ -61,6 +79,9 @@ namespace leak_test_project.Views if (cbSensorPort.SelectedItem != null) config.SensorPort = cbSensorPort.SelectedItem.ToString(); + if (cbBoard4253Port.SelectedItem != null) + config.Board4253Port = cbBoard4253Port.SelectedItem.ToString(); + if (cbZmdiBaudRate.SelectedItem is ComboBoxItem zmdiBaud) { if (int.TryParse(zmdiBaud.Content.ToString(), out int baud)) @@ -73,6 +94,12 @@ namespace leak_test_project.Views config.SensorBaudRate = baud; } + if (cbBoard4253BaudRate.SelectedItem is ComboBoxItem boardBaud) + { + if (int.TryParse(boardBaud.Content.ToString(), out int baud)) + config.Board4253BaudRate = baud; + } + ConfigManager.Save(); MessageBox.Show("통신 설정이 저장되었습니다."); this.DialogResult = true; diff --git a/leak_test_project/bin/Debug/Logs/2026-04-10_system.log b/leak_test_project/bin/Debug/Logs/2026-04-10_system.log new file mode 100644 index 0000000..97f16be --- /dev/null +++ b/leak_test_project/bin/Debug/Logs/2026-04-10_system.log @@ -0,0 +1,40 @@ +[10:57:23.540] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3): x00c_001101:or2800326003e +[10:57:24.360] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3): x00c_001101:or2800326003e +[10:57:25.176] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3): x00c_001101:or2800326003e +[10:57:25.996] [WARNING] [Board4253] Timeout waiting for response (Retry 4/3): x00c_001101:or2800326003e +[10:57:25.996] [ERROR] [Board4253] Failed to receive response after 3 retries: x00c_001101:or2800326003e +[11:27:53.912] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3): x00c_001101:ow2800326003e +[11:27:54.720] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3): x00c_001101:ow2800326003e +[11:27:55.532] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3): x00c_001101:ow2800326003e +[11:27:56.342] [WARNING] [Board4253] Timeout waiting for response (Retry 4/3): x00c_001101:ow2800326003e +[11:27:56.342] [ERROR] [Board4253] Failed to receive response after 3 retries: x00c_001101:ow2800326003e +[11:29:30.538] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3): x00c_001101:ow2800326003e +[11:29:31.343] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3): x00c_001101:ow2800326003e +[11:29:32.156] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3): x00c_001101:ow2800326003e +[11:29:33.452] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3): x00c_002101:owt28006727ea97c7801 +[11:29:34.263] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3): x00c_002101:owt28006727ea97c7801 +[11:29:38.203] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3): x00c_001101:ow2800326003e +[11:29:39.013] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3): x00c_001101:ow2800326003e +[11:29:39.827] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3): x00c_001101:ow2800326003e +[11:29:40.640] [WARNING] [Board4253] Timeout waiting for response (Retry 4/3): x00c_001101:ow2800326003e +[11:29:40.641] [ERROR] [Board4253] Failed to receive response after 3 retries: x00c_001101:ow2800326003e +[11:30:02.158] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3): x00c_001101:ow2800326003e +[11:30:02.970] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3): x00c_001101:ow2800326003e +[11:30:03.782] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3): x00c_001101:ow2800326003e +[11:30:04.399] [ERROR] [Board4253] Failed to receive response after 3 retries: x00c_001101:ow2800326003e +[11:31:35.380] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3): x00c_001101:ow2800326003e +[11:31:36.186] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3): x00c_001101:ow2800326003e +[11:31:36.998] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3): x00c_001101:ow2800326003e +[11:31:39.570] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3): x00c_002101:owt28006727ea97c7801 +[11:31:40.392] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3): x00c_002101:owt28006727ea97c7801 +[11:31:41.203] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3): x00c_002101:owt28006727ea97c7801 +[11:31:42.014] [WARNING] [Board4253] Timeout waiting for response (Retry 4/3): x00c_002101:owt28006727ea97c7801 +[11:31:42.014] [ERROR] [Board4253] Failed to receive response after 3 retries: x00c_002101:owt28006727ea97c7801 +[11:31:42.521] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3): x00c_001101:owt28006727ea97c7801 +[11:32:17.987] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3): x00c_001101:ow2800326003e +[11:32:18.794] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3): x00c_001101:ow2800326003e +[11:32:19.609] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3): x00c_001101:ow2800326003e +[11:32:20.227] [ERROR] [Board4253] Failed to receive response after 3 retries: x00c_001101:ow2800326003e +[11:34:56.304] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3): x00c_001101:ow2800326003e +[11:34:57.111] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3): x00c_001101:ow2800326003e +[11:34:57.922] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3): x00c_001101:ow2800326003e diff --git a/leak_test_project/bin/Debug/PCI-Dask.dll b/leak_test_project/bin/Debug/PCI-Dask.dll new file mode 100644 index 0000000..b22577f Binary files /dev/null and b/leak_test_project/bin/Debug/PCI-Dask.dll differ diff --git a/leak_test_project/bin/Debug/PCI-Dask64.dll b/leak_test_project/bin/Debug/PCI-Dask64.dll new file mode 100644 index 0000000..bfe5d7a Binary files /dev/null and b/leak_test_project/bin/Debug/PCI-Dask64.dll differ diff --git a/leak_test_project/bin/Debug/app.publish/leak_test_project.exe b/leak_test_project/bin/Debug/app.publish/leak_test_project.exe index 4419cd3..a82f630 100644 Binary files a/leak_test_project/bin/Debug/app.publish/leak_test_project.exe and b/leak_test_project/bin/Debug/app.publish/leak_test_project.exe differ diff --git a/leak_test_project/bin/Debug/config.xml b/leak_test_project/bin/Debug/config.xml new file mode 100644 index 0000000..20aa724 --- /dev/null +++ b/leak_test_project/bin/Debug/config.xml @@ -0,0 +1,14 @@ + + + Board4253 + COM9 + COM8 + 19200 + COM1 + 9600 + COM11 + 115200 + 500 + 1 + -1 + \ No newline at end of file diff --git a/leak_test_project/bin/Debug/leak_test_project.application b/leak_test_project/bin/Debug/leak_test_project.application index 5aea24e..2130e12 100644 --- a/leak_test_project/bin/Debug/leak_test_project.application +++ b/leak_test_project/bin/Debug/leak_test_project.application @@ -1,20 +1,20 @@  - + - - + + - ZVNslA44bMsOvDWECIypEv8SmpP+p8l/CiQk7HS9J1w= + 6+b0r1Gncm2nD/TjBHVCWtS6O3CAXOdxRTwtx09ap8E= diff --git a/leak_test_project/bin/Debug/leak_test_project.exe b/leak_test_project/bin/Debug/leak_test_project.exe index d4ef5d6..f73bb6c 100644 Binary files a/leak_test_project/bin/Debug/leak_test_project.exe and b/leak_test_project/bin/Debug/leak_test_project.exe differ diff --git a/leak_test_project/bin/Debug/leak_test_project.exe.manifest b/leak_test_project/bin/Debug/leak_test_project.exe.manifest index 0ec6774..e4f39d0 100644 --- a/leak_test_project/bin/Debug/leak_test_project.exe.manifest +++ b/leak_test_project/bin/Debug/leak_test_project.exe.manifest @@ -1,6 +1,6 @@  - + @@ -32,7 +32,7 @@ - + @@ -42,14 +42,14 @@ - + - Hk89URW/8JRbm5i4mtE97JaiiFEb87B1kc8GaoCCIok= + WIlRaRAkyOL/i77TGkCYPDQrXlpbIq1b8rVePHEWnCQ= @@ -62,4 +62,13 @@ R+Wg8QGvQVHX8T0ta/qbhH1bXkqY0fRnS3wBV3J0bN8= + + + + + + + pDB54gSYV5M/tu2DZtDUj13HUp3HrRLSNr97K/nGHh4= + + \ No newline at end of file diff --git a/leak_test_project/bin/Debug/leak_test_project.pdb b/leak_test_project/bin/Debug/leak_test_project.pdb index 7abacdb..b6bbe53 100644 Binary files a/leak_test_project/bin/Debug/leak_test_project.pdb and b/leak_test_project/bin/Debug/leak_test_project.pdb differ diff --git a/leak_test_project/bin/Release/Logs/2026-04-08_system.log b/leak_test_project/bin/Release/Logs/2026-04-08_system.log new file mode 100644 index 0000000..926c3c4 --- /dev/null +++ b/leak_test_project/bin/Release/Logs/2026-04-08_system.log @@ -0,0 +1 @@ +[10:08:53.914] [ERROR] [Board4253] Timeout waiting for response: x00c_001101:owt28006727ea97c7801 diff --git a/leak_test_project/bin/Release/Logs/2026-04-10_system.log b/leak_test_project/bin/Release/Logs/2026-04-10_system.log new file mode 100644 index 0000000..111f978 --- /dev/null +++ b/leak_test_project/bin/Release/Logs/2026-04-10_system.log @@ -0,0 +1,110 @@ +[10:55:42.190] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3): x00c_001101:or2800326003e +[10:55:43.011] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3): x00c_001101:or2800326003e +[10:55:43.825] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3): x00c_001101:or2800326003e +[10:55:44.651] [WARNING] [Board4253] Timeout waiting for response (Retry 4/3): x00c_001101:or2800326003e +[10:55:44.651] [ERROR] [Board4253] Failed to receive response after 3 retries: x00c_001101:or2800326003e +[10:55:50.603] [ERROR] [Board4253] Failed to receive response after 3 retries: x00c_001101:owt28006727ea97c7801 +[10:56:00.155] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3): x00c_001101:or2800326003e +[10:56:00.972] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3): x00c_001101:or2800326003e +[10:56:01.777] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3): x00c_001101:or2800326003e +[10:56:02.589] [WARNING] [Board4253] Timeout waiting for response (Retry 4/3): x00c_001101:or2800326003e +[10:56:02.590] [ERROR] [Board4253] Failed to receive response after 3 retries: x00c_001101:or2800326003e +[11:45:27.879] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:45:28.685] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:45:29.496] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:45:30.310] [WARNING] [Board4253] Timeout waiting for response (Retry 4/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:45:30.311] [ERROR] [Board4253] Failed to receive response after 3 retries: x00c_001101:ow2800326003e +[11:45:33.669] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:45:34.481] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:45:35.294] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:45:38.933] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_002101:ow2800326003e, ReceivedSoFar: Fail +[11:45:39.749] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_002101:ow2800326003e, ReceivedSoFar: Fail +[11:45:40.562] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_002101:ow2800326003e, ReceivedSoFar: Fail +[11:45:41.374] [WARNING] [Board4253] Timeout waiting for response (Retry 4/3). Command: x00c_002101:ow2800326003e, ReceivedSoFar: Fail +[11:45:41.374] [ERROR] [Board4253] Failed to receive response after 3 retries: x00c_002101:ow2800326003e +[11:47:36.376] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:47:37.184] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:47:37.997] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:47:43.421] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_002101:ow2800326003e, ReceivedSoFar: Fail +[11:47:44.231] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_002101:ow2800326003e, ReceivedSoFar: Fail +[11:47:45.043] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_002101:ow2800326003e, ReceivedSoFar: Fail +[11:47:45.856] [WARNING] [Board4253] Timeout waiting for response (Retry 4/3). Command: x00c_002101:ow2800326003e, ReceivedSoFar: Fail +[11:47:45.856] [ERROR] [Board4253] Failed to receive response after 3 retries: x00c_002101:ow2800326003e +[11:51:07.941] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:51:08.748] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:51:09.563] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:51:16.230] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_002101:ow2800326003e, ReceivedSoFar: Fail +[11:51:17.048] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_002101:ow2800326003e, ReceivedSoFar: Fail +[11:51:17.861] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_002101:ow2800326003e, ReceivedSoFar: Fail +[11:51:18.674] [WARNING] [Board4253] Timeout waiting for response (Retry 4/3). Command: x00c_002101:ow2800326003e, ReceivedSoFar: Fail +[11:51:18.674] [ERROR] [Board4253] Failed to receive response after 3 retries: x00c_002101:ow2800326003e +[11:51:20.811] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:51:21.623] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:51:22.436] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:51:23.250] [WARNING] [Board4253] Timeout waiting for response (Retry 4/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:51:23.250] [ERROR] [Board4253] Failed to receive response after 3 retries: x00c_001101:ow2800326003e +[11:51:24.701] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_002101:ow2800326003e, ReceivedSoFar: +[11:51:25.517] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_002101:ow2800326003e, ReceivedSoFar: +[11:51:26.329] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_002101:ow2800326003e, ReceivedSoFar: +[11:51:27.143] [WARNING] [Board4253] Timeout waiting for response (Retry 4/3). Command: x00c_002101:ow2800326003e, ReceivedSoFar: +[11:51:27.143] [ERROR] [Board4253] Failed to receive response after 3 retries: x00c_002101:ow2800326003e +[11:53:02.049] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:53:02.873] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:53:03.700] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:53:10.308] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:53:11.123] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:53:11.936] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:54:34.879] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:54:35.688] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:54:36.501] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:55:07.112] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:55:07.921] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:55:08.737] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:56:49.722] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:56:50.534] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:56:51.346] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:57:40.955] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:57:41.765] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:57:42.578] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:57:45.123] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_002101:owt28006727ea97c7801, ReceivedSoFar: +[11:57:45.939] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_002101:owt28006727ea97c7801, ReceivedSoFar: +[11:57:54.032] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:57:54.846] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[11:57:55.656] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:01:13.123] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:01:13.946] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:01:14.765] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:02:59.012] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:02:59.828] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:03:00.640] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:06:24.445] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:06:25.267] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:06:26.081] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:06:26.889] [WARNING] [Board4253] Timeout waiting for response (Retry 4/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:06:26.889] [ERROR] [Board4253] Failed to receive response after 3 retries: x00c_001101:ow2800326003e +[12:06:33.035] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:06:33.846] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:06:34.655] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:06:35.470] [WARNING] [Board4253] Timeout waiting for response (Retry 4/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:06:35.470] [ERROR] [Board4253] Failed to receive response after 3 retries: x00c_001101:ow2800326003e +[12:09:47.128] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:09:47.937] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:09:48.749] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:09:49.564] [WARNING] [Board4253] Timeout waiting for response (Retry 4/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:09:49.564] [ERROR] [Board4253] Failed to receive response after 3 retries: x00c_001101:ow2800326003e +[12:09:52.656] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_002101:owt28006727ea97c7801, ReceivedSoFar: +[12:09:53.467] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_002101:owt28006727ea97c7801, ReceivedSoFar: +[12:09:54.287] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_002101:owt28006727ea97c7801, ReceivedSoFar: +[12:13:16.837] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:13:17.654] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:13:18.470] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:14:59.721] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:15:00.533] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:15:01.344] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:17:00.864] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:17:01.672] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:17:02.484] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:18:04.430] [ERROR] [Board4253] Failed to receive response after 3 retries: x00c_002101:owt28006727ea97c7801 +[12:21:18.658] [WARNING] [Board4253] Timeout waiting for response (Retry 1/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:21:19.470] [WARNING] [Board4253] Timeout waiting for response (Retry 2/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: +[12:21:20.283] [WARNING] [Board4253] Timeout waiting for response (Retry 3/3). Command: x00c_001101:ow2800326003e, ReceivedSoFar: diff --git a/leak_test_project/bin/Release/PCI-Dask.dll b/leak_test_project/bin/Release/PCI-Dask.dll new file mode 100644 index 0000000..b22577f Binary files /dev/null and b/leak_test_project/bin/Release/PCI-Dask.dll differ diff --git a/leak_test_project/bin/Release/PCI-Dask64.dll b/leak_test_project/bin/Release/PCI-Dask64.dll new file mode 100644 index 0000000..bfe5d7a Binary files /dev/null and b/leak_test_project/bin/Release/PCI-Dask64.dll differ diff --git a/leak_test_project/bin/Release/app.publish/Application Files/leak_test_project_1_0_0_13/PCI-Dask.dll.deploy b/leak_test_project/bin/Release/app.publish/Application Files/leak_test_project_1_0_0_13/PCI-Dask.dll.deploy new file mode 100644 index 0000000..b22577f Binary files /dev/null and b/leak_test_project/bin/Release/app.publish/Application Files/leak_test_project_1_0_0_13/PCI-Dask.dll.deploy differ diff --git a/leak_test_project/bin/Release/app.publish/Application Files/leak_test_project_1_0_0_13/leak_test_project.exe.config.deploy b/leak_test_project/bin/Release/app.publish/Application Files/leak_test_project_1_0_0_13/leak_test_project.exe.config.deploy new file mode 100644 index 0000000..56efbc7 --- /dev/null +++ b/leak_test_project/bin/Release/app.publish/Application Files/leak_test_project_1_0_0_13/leak_test_project.exe.config.deploy @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/leak_test_project/bin/Release/app.publish/Application Files/leak_test_project_1_0_0_13/leak_test_project.exe.deploy b/leak_test_project/bin/Release/app.publish/Application Files/leak_test_project_1_0_0_13/leak_test_project.exe.deploy new file mode 100644 index 0000000..fd26e4a Binary files /dev/null and b/leak_test_project/bin/Release/app.publish/Application Files/leak_test_project_1_0_0_13/leak_test_project.exe.deploy differ diff --git a/leak_test_project/bin/Release/app.publish/Application Files/leak_test_project_1_0_0_13/leak_test_project.exe.manifest b/leak_test_project/bin/Release/app.publish/Application Files/leak_test_project_1_0_0_13/leak_test_project.exe.manifest new file mode 100644 index 0000000..7f667ed --- /dev/null +++ b/leak_test_project/bin/Release/app.publish/Application Files/leak_test_project_1_0_0_13/leak_test_project.exe.manifest @@ -0,0 +1,74 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + s7N9iBWk8fUXDSMpsQYD+HuhDnCsSIbyR3ysKPAKQVk= + + + + + + + + + + R+Wg8QGvQVHX8T0ta/qbhH1bXkqY0fRnS3wBV3J0bN8= + + + + + + + + + pDB54gSYV5M/tu2DZtDUj13HUp3HrRLSNr97K/nGHh4= + + +IGryd/vhTzmjoO2eqd6Fb97hDJRqSJsVRL8N69/x1HI=l/LS5ocaQyl+3bxBd88XE6RbZwuUh8UgQwc1fUStRM+YbNLGPqZxdyooS89DBCd0B5bl942Tmt0zwsO6vlXORjbVCiOKDE44RJjSD2WxLv382r/hjt/soundny9dJ/NyjlRBJOSpiYlz6qMlOuWRW2pPcYCjJunNGp9XI5O5F40=tuYFpgQ5mc5y74DoHVuljBkqCkS9uu7YKD44vJG9EhrIonpNmMiwO7STg2PDbfxjEy7X17zEpz7rfw1i4zzDsUuphsWlf8IKa0pvK7QRjoUi1Kov4Ri6v1orgwbEUas61B4b4fWuhLvc/xbQh987P036LobVer7k1zqtQTVQhzU=AQABCN=COMPUTER\COMPUTER1bUBgGdguRHJX/VMsU/Q/dweM3kOGzKR9U/PMq6CpRgE=Nl9I0EWNksmG0cfN22YJ7ba0bmecY8JjVMMii1M6GS2hSrLyHEMfQ7sSSmf/GV3Ae/jVsz9fWa0+qPx0/aDmxcOK5o94IYbkZtC8Yn0dbFDSWG37UFakG3SPLOxUIYU8+Woh8P32dSCIfaw2lrPlOuyqr2Tx1Lq/dBKvv/W7BCE=tuYFpgQ5mc5y74DoHVuljBkqCkS9uu7YKD44vJG9EhrIonpNmMiwO7STg2PDbfxjEy7X17zEpz7rfw1i4zzDsUuphsWlf8IKa0pvK7QRjoUi1Kov4Ri6v1orgwbEUas61B4b4fWuhLvc/xbQh987P036LobVer7k1zqtQTVQhzU=AQABMIIB4TCCAUqgAwIBAgIQWEJoD8lqaYlP6JqlHCvs5TANBgkqhkiG9w0BAQsFADAvMS0wKwYDVQQDHiQAQwBPAE0AUABVAFQARQBSAFwAQwBPAE0AUABVAFQARQBSADEwHhcNMjYwMzI0MDIzMjE1WhcNMjcwMzI0MDgzMjE1WjAvMS0wKwYDVQQDHiQAQwBPAE0AUABVAFQARQBSAFwAQwBPAE0AUABVAFQARQBSADEwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBALbmBaYEOZnOcu+A6B1bpYwZKgpEvbru2Cg+OLyRvRIayKJ6TZjIsDu0k4Njw238YxMu19e8xKc+638NYuM8w7FLqYbFpX/CCmtKbyu0EY6FItSqL+EYur9aK4MGxFGrOtQeG+H1roS73P8W0IffOz9N+i6G1Xq+5Nc6rUE1UIc1AgMBAAEwDQYJKoZIhvcNAQELBQADgYEAUsdGhPmkbh1nlC8UNtLUtmKJFrxEjinb/AyF2q0JI09sqZy0bpJXBrNGMFSgaSj5YznZJGjWH6xMCNKyy9l70dDtUs32EE3ZqA2gJxOL75BFS6cNFG0poqxd1Jwr01xm0jtjN34GTjLMWzFzTYBdtYx5w/t91i/arkapFfWyYD4= \ No newline at end of file diff --git a/leak_test_project/bin/Release/app.publish/leak_test_project.application b/leak_test_project/bin/Release/app.publish/leak_test_project.application new file mode 100644 index 0000000..bda5eea --- /dev/null +++ b/leak_test_project/bin/Release/app.publish/leak_test_project.application @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + vZGlZ5qI3sVmBh95J81hLbqfdYw4njv0uB7RtDrOvHs= + + + +FmFXiPyX80Gc/Tr21p3YuCFMtpIYuWeDiBxsaSdTbvQ=XmnCAww20AlPr4s/cfKBsgEbQUQ2X0suzuVtdMekgNypuTFO5UdWFgOLZZtDnBZR0MxcFyHx332YHgZO54J3aU6RJ8BN+o2yby/hLX+lmZ1pquWtVHKHyytAG4XyVCnA6s9Eh5IkVVL/czRuJfLxoVUZf8edM2mooPYmYxtGREA=tuYFpgQ5mc5y74DoHVuljBkqCkS9uu7YKD44vJG9EhrIonpNmMiwO7STg2PDbfxjEy7X17zEpz7rfw1i4zzDsUuphsWlf8IKa0pvK7QRjoUi1Kov4Ri6v1orgwbEUas61B4b4fWuhLvc/xbQh987P036LobVer7k1zqtQTVQhzU=AQABCN=COMPUTER\COMPUTER1EmpRdk8DsUDcdaWJE1vl68QAegel0yF1f5e8pvmRQjM=cgZrWaxQtJh0Gr03iFoHJPQApEcGyJxP1NAd0OA65Fu7lEfDKbshAiSbIDjiSezJfHf3wQpizVvTr4sIUkWOrSOCg6LdCPSST6QJAeQ7LXEfMO7dXO06vklj7vV9nS/RtOPfP8BiXThr6QDVu8KzvDRaDLhIgfm/cjMh3mVMkLU=tuYFpgQ5mc5y74DoHVuljBkqCkS9uu7YKD44vJG9EhrIonpNmMiwO7STg2PDbfxjEy7X17zEpz7rfw1i4zzDsUuphsWlf8IKa0pvK7QRjoUi1Kov4Ri6v1orgwbEUas61B4b4fWuhLvc/xbQh987P036LobVer7k1zqtQTVQhzU=AQABMIIB4TCCAUqgAwIBAgIQWEJoD8lqaYlP6JqlHCvs5TANBgkqhkiG9w0BAQsFADAvMS0wKwYDVQQDHiQAQwBPAE0AUABVAFQARQBSAFwAQwBPAE0AUABVAFQARQBSADEwHhcNMjYwMzI0MDIzMjE1WhcNMjcwMzI0MDgzMjE1WjAvMS0wKwYDVQQDHiQAQwBPAE0AUABVAFQARQBSAFwAQwBPAE0AUABVAFQARQBSADEwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBALbmBaYEOZnOcu+A6B1bpYwZKgpEvbru2Cg+OLyRvRIayKJ6TZjIsDu0k4Njw238YxMu19e8xKc+638NYuM8w7FLqYbFpX/CCmtKbyu0EY6FItSqL+EYur9aK4MGxFGrOtQeG+H1roS73P8W0IffOz9N+i6G1Xq+5Nc6rUE1UIc1AgMBAAEwDQYJKoZIhvcNAQELBQADgYEAUsdGhPmkbh1nlC8UNtLUtmKJFrxEjinb/AyF2q0JI09sqZy0bpJXBrNGMFSgaSj5YznZJGjWH6xMCNKyy9l70dDtUs32EE3ZqA2gJxOL75BFS6cNFG0poqxd1Jwr01xm0jtjN34GTjLMWzFzTYBdtYx5w/t91i/arkapFfWyYD4= \ No newline at end of file diff --git a/leak_test_project/bin/Release/app.publish/leak_test_project.exe b/leak_test_project/bin/Release/app.publish/leak_test_project.exe index f49f53b..fd26e4a 100644 Binary files a/leak_test_project/bin/Release/app.publish/leak_test_project.exe and b/leak_test_project/bin/Release/app.publish/leak_test_project.exe differ diff --git a/leak_test_project/bin/Release/app.publish/setup.exe b/leak_test_project/bin/Release/app.publish/setup.exe new file mode 100644 index 0000000..30e3e2b Binary files /dev/null and b/leak_test_project/bin/Release/app.publish/setup.exe differ diff --git a/leak_test_project/bin/Release/config.xml b/leak_test_project/bin/Release/config.xml index 89d7a35..28b6f76 100644 --- a/leak_test_project/bin/Release/config.xml +++ b/leak_test_project/bin/Release/config.xml @@ -1,10 +1,14 @@ + Board4253 COM1 - COM2 + COM1 19200 - COM3 + COM1 9600 + COM11 + 115200 + 500 0.1 -0.15 \ No newline at end of file diff --git a/leak_test_project/bin/Release/leak_test_project.application b/leak_test_project/bin/Release/leak_test_project.application index 894108c..9ca71bd 100644 --- a/leak_test_project/bin/Release/leak_test_project.application +++ b/leak_test_project/bin/Release/leak_test_project.application @@ -1,6 +1,6 @@  - + @@ -8,13 +8,13 @@ - + - +tT5TcFav5TEeRJogPVqrD2i+n0zc3NErhzPuBsdAok= + IH+aKiFvhI6LMjGB1EhRjwzDSWKszz5bvalWw8FvXd8= diff --git a/leak_test_project/bin/Release/leak_test_project.exe b/leak_test_project/bin/Release/leak_test_project.exe index 597deaa..425743f 100644 Binary files a/leak_test_project/bin/Release/leak_test_project.exe and b/leak_test_project/bin/Release/leak_test_project.exe differ diff --git a/leak_test_project/bin/Release/leak_test_project.exe.manifest b/leak_test_project/bin/Release/leak_test_project.exe.manifest index e9d93f4..7aaf515 100644 --- a/leak_test_project/bin/Release/leak_test_project.exe.manifest +++ b/leak_test_project/bin/Release/leak_test_project.exe.manifest @@ -1,6 +1,6 @@  - + @@ -42,14 +42,14 @@ - + - qAkKP87U3yb9EpU29R51sPc1OgjB2lM+2tz7F86u2qI= + s7N9iBWk8fUXDSMpsQYD+HuhDnCsSIbyR3ysKPAKQVk= diff --git a/leak_test_project/bin/Release/leak_test_project.pdb b/leak_test_project/bin/Release/leak_test_project.pdb index 32a13e7..f212031 100644 Binary files a/leak_test_project/bin/Release/leak_test_project.pdb and b/leak_test_project/bin/Release/leak_test_project.pdb differ diff --git a/leak_test_project/leak_test_project.csproj b/leak_test_project/leak_test_project.csproj index 70eb380..493064f 100644 --- a/leak_test_project/leak_test_project.csproj +++ b/leak_test_project/leak_test_project.csproj @@ -27,7 +27,7 @@ false false true - 12 + 14 1.0.0.%2a false true @@ -123,6 +123,10 @@ + + + + diff --git a/leak_test_project/obj/Debug/App.baml b/leak_test_project/obj/Debug/App.baml new file mode 100644 index 0000000..c9aed09 Binary files /dev/null and b/leak_test_project/obj/Debug/App.baml differ diff --git a/leak_test_project/obj/Debug/App.g.cs b/leak_test_project/obj/Debug/App.g.cs new file mode 100644 index 0000000..acb1b01 --- /dev/null +++ b/leak_test_project/obj/Debug/App.g.cs @@ -0,0 +1,85 @@ +#pragma checksum "..\..\App.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "73F5F908C98AC0A4A2D7A967CABB888F63ACECD5A90B6398EE439DB2A02FC994" +//------------------------------------------------------------------------------ +// +// 이 코드는 도구를 사용하여 생성되었습니다. +// 런타임 버전:4.0.30319.42000 +// +// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +// 이러한 변경 내용이 손실됩니다. +// +//------------------------------------------------------------------------------ + +using System; +using System.Diagnostics; +using System.Windows; +using System.Windows.Automation; +using System.Windows.Controls; +using System.Windows.Controls.Primitives; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Ink; +using System.Windows.Input; +using System.Windows.Markup; +using System.Windows.Media; +using System.Windows.Media.Animation; +using System.Windows.Media.Effects; +using System.Windows.Media.Imaging; +using System.Windows.Media.Media3D; +using System.Windows.Media.TextFormatting; +using System.Windows.Navigation; +using System.Windows.Shapes; +using System.Windows.Shell; +using leak_test_project; +using leak_test_project.ViewModels; +using leak_test_project.Views; + + +namespace leak_test_project { + + + /// + /// App + /// + public partial class App : System.Windows.Application { + + private bool _contentLoaded; + + /// + /// InitializeComponent + /// + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + public void InitializeComponent() { + if (_contentLoaded) { + return; + } + _contentLoaded = true; + + #line 7 "..\..\App.xaml" + this.StartupUri = new System.Uri("MainWindow.xaml", System.UriKind.Relative); + + #line default + #line hidden + System.Uri resourceLocater = new System.Uri("/leak_test_project;component/app.xaml", System.UriKind.Relative); + + #line 1 "..\..\App.xaml" + System.Windows.Application.LoadComponent(this, resourceLocater); + + #line default + #line hidden + } + + /// + /// Application Entry Point. + /// + [System.STAThreadAttribute()] + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + public static void Main() { + leak_test_project.App app = new leak_test_project.App(); + app.InitializeComponent(); + app.Run(); + } + } +} + diff --git a/leak_test_project/obj/Debug/App.g.i.cs b/leak_test_project/obj/Debug/App.g.i.cs new file mode 100644 index 0000000..acb1b01 --- /dev/null +++ b/leak_test_project/obj/Debug/App.g.i.cs @@ -0,0 +1,85 @@ +#pragma checksum "..\..\App.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "73F5F908C98AC0A4A2D7A967CABB888F63ACECD5A90B6398EE439DB2A02FC994" +//------------------------------------------------------------------------------ +// +// 이 코드는 도구를 사용하여 생성되었습니다. +// 런타임 버전:4.0.30319.42000 +// +// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +// 이러한 변경 내용이 손실됩니다. +// +//------------------------------------------------------------------------------ + +using System; +using System.Diagnostics; +using System.Windows; +using System.Windows.Automation; +using System.Windows.Controls; +using System.Windows.Controls.Primitives; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Ink; +using System.Windows.Input; +using System.Windows.Markup; +using System.Windows.Media; +using System.Windows.Media.Animation; +using System.Windows.Media.Effects; +using System.Windows.Media.Imaging; +using System.Windows.Media.Media3D; +using System.Windows.Media.TextFormatting; +using System.Windows.Navigation; +using System.Windows.Shapes; +using System.Windows.Shell; +using leak_test_project; +using leak_test_project.ViewModels; +using leak_test_project.Views; + + +namespace leak_test_project { + + + /// + /// App + /// + public partial class App : System.Windows.Application { + + private bool _contentLoaded; + + /// + /// InitializeComponent + /// + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + public void InitializeComponent() { + if (_contentLoaded) { + return; + } + _contentLoaded = true; + + #line 7 "..\..\App.xaml" + this.StartupUri = new System.Uri("MainWindow.xaml", System.UriKind.Relative); + + #line default + #line hidden + System.Uri resourceLocater = new System.Uri("/leak_test_project;component/app.xaml", System.UriKind.Relative); + + #line 1 "..\..\App.xaml" + System.Windows.Application.LoadComponent(this, resourceLocater); + + #line default + #line hidden + } + + /// + /// Application Entry Point. + /// + [System.STAThreadAttribute()] + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + public static void Main() { + leak_test_project.App app = new leak_test_project.App(); + app.InitializeComponent(); + app.Run(); + } + } +} + diff --git a/leak_test_project/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/leak_test_project/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000..e9c5d44 Binary files /dev/null and b/leak_test_project/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ diff --git a/leak_test_project/obj/Debug/GeneratedInternalTypeHelper.g.cs b/leak_test_project/obj/Debug/GeneratedInternalTypeHelper.g.cs new file mode 100644 index 0000000..c65238f --- /dev/null +++ b/leak_test_project/obj/Debug/GeneratedInternalTypeHelper.g.cs @@ -0,0 +1,2 @@ + + diff --git a/leak_test_project/obj/Debug/GeneratedInternalTypeHelper.g.i.cs b/leak_test_project/obj/Debug/GeneratedInternalTypeHelper.g.i.cs new file mode 100644 index 0000000..04dc0b9 --- /dev/null +++ b/leak_test_project/obj/Debug/GeneratedInternalTypeHelper.g.i.cs @@ -0,0 +1,62 @@ +//------------------------------------------------------------------------------ +// +// 이 코드는 도구를 사용하여 생성되었습니다. +// 런타임 버전:4.0.30319.42000 +// +// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +// 이러한 변경 내용이 손실됩니다. +// +//------------------------------------------------------------------------------ + +namespace XamlGeneratedNamespace { + + + /// + /// GeneratedInternalTypeHelper + /// + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)] + public sealed class GeneratedInternalTypeHelper : System.Windows.Markup.InternalTypeHelper { + + /// + /// CreateInstance + /// + protected override object CreateInstance(System.Type type, System.Globalization.CultureInfo culture) { + return System.Activator.CreateInstance(type, ((System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.NonPublic) + | (System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.CreateInstance)), null, null, culture); + } + + /// + /// GetPropertyValue + /// + protected override object GetPropertyValue(System.Reflection.PropertyInfo propertyInfo, object target, System.Globalization.CultureInfo culture) { + return propertyInfo.GetValue(target, System.Reflection.BindingFlags.Default, null, null, culture); + } + + /// + /// SetPropertyValue + /// + protected override void SetPropertyValue(System.Reflection.PropertyInfo propertyInfo, object target, object value, System.Globalization.CultureInfo culture) { + propertyInfo.SetValue(target, value, System.Reflection.BindingFlags.Default, null, null, culture); + } + + /// + /// CreateDelegate + /// + protected override System.Delegate CreateDelegate(System.Type delegateType, object target, string handler) { + return ((System.Delegate)(target.GetType().InvokeMember("_CreateDelegate", (System.Reflection.BindingFlags.InvokeMethod + | (System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance)), null, target, new object[] { + delegateType, + handler}, null))); + } + + /// + /// AddEventHandler + /// + protected override void AddEventHandler(System.Reflection.EventInfo eventInfo, object target, System.Delegate handler) { + eventInfo.AddEventHandler(target, handler); + } + } +} + diff --git a/leak_test_project/obj/Debug/MainWindow.baml b/leak_test_project/obj/Debug/MainWindow.baml new file mode 100644 index 0000000..cb75ced Binary files /dev/null and b/leak_test_project/obj/Debug/MainWindow.baml differ diff --git a/leak_test_project/obj/Debug/MainWindow.g.cs b/leak_test_project/obj/Debug/MainWindow.g.cs new file mode 100644 index 0000000..0961001 --- /dev/null +++ b/leak_test_project/obj/Debug/MainWindow.g.cs @@ -0,0 +1,133 @@ +#pragma checksum "..\..\MainWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "757CBCD9E21A494C9927096673B3DCAADE9698FAA3323F88DE79A3D94DB7FAA6" +//------------------------------------------------------------------------------ +// +// 이 코드는 도구를 사용하여 생성되었습니다. +// 런타임 버전:4.0.30319.42000 +// +// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +// 이러한 변경 내용이 손실됩니다. +// +//------------------------------------------------------------------------------ + +using System; +using System.Diagnostics; +using System.Windows; +using System.Windows.Automation; +using System.Windows.Controls; +using System.Windows.Controls.Primitives; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Ink; +using System.Windows.Input; +using System.Windows.Markup; +using System.Windows.Media; +using System.Windows.Media.Animation; +using System.Windows.Media.Effects; +using System.Windows.Media.Imaging; +using System.Windows.Media.Media3D; +using System.Windows.Media.TextFormatting; +using System.Windows.Navigation; +using System.Windows.Shapes; +using System.Windows.Shell; +using leak_test_project.ViewModels; + + +namespace leak_test_project { + + + /// + /// MainWindow + /// + public partial class MainWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector { + + + #line 36 "..\..\MainWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.TextBlock txtCurrentDateTime; + + #line default + #line hidden + + + #line 49 "..\..\MainWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.Button btnMaximize; + + #line default + #line hidden + + + #line 50 "..\..\MainWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.TextBlock txtMaximizeIcon; + + #line default + #line hidden + + private bool _contentLoaded; + + /// + /// InitializeComponent + /// + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + public void InitializeComponent() { + if (_contentLoaded) { + return; + } + _contentLoaded = true; + System.Uri resourceLocater = new System.Uri("/leak_test_project;component/mainwindow.xaml", System.UriKind.Relative); + + #line 1 "..\..\MainWindow.xaml" + System.Windows.Application.LoadComponent(this, resourceLocater); + + #line default + #line hidden + } + + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")] + void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { + switch (connectionId) + { + case 1: + + #line 21 "..\..\MainWindow.xaml" + ((System.Windows.Controls.Border)(target)).MouseLeftButtonDown += new System.Windows.Input.MouseButtonEventHandler(this.TopBar_MouseLeftButtonDown); + + #line default + #line hidden + return; + case 2: + this.txtCurrentDateTime = ((System.Windows.Controls.TextBlock)(target)); + return; + case 3: + + #line 46 "..\..\MainWindow.xaml" + ((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.BtnMinimize_Click); + + #line default + #line hidden + return; + case 4: + this.btnMaximize = ((System.Windows.Controls.Button)(target)); + + #line 49 "..\..\MainWindow.xaml" + this.btnMaximize.Click += new System.Windows.RoutedEventHandler(this.BtnMaximize_Click); + + #line default + #line hidden + return; + case 5: + this.txtMaximizeIcon = ((System.Windows.Controls.TextBlock)(target)); + return; + } + this._contentLoaded = true; + } + } +} + diff --git a/leak_test_project/obj/Debug/MainWindow.g.i.cs b/leak_test_project/obj/Debug/MainWindow.g.i.cs new file mode 100644 index 0000000..0961001 --- /dev/null +++ b/leak_test_project/obj/Debug/MainWindow.g.i.cs @@ -0,0 +1,133 @@ +#pragma checksum "..\..\MainWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "757CBCD9E21A494C9927096673B3DCAADE9698FAA3323F88DE79A3D94DB7FAA6" +//------------------------------------------------------------------------------ +// +// 이 코드는 도구를 사용하여 생성되었습니다. +// 런타임 버전:4.0.30319.42000 +// +// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +// 이러한 변경 내용이 손실됩니다. +// +//------------------------------------------------------------------------------ + +using System; +using System.Diagnostics; +using System.Windows; +using System.Windows.Automation; +using System.Windows.Controls; +using System.Windows.Controls.Primitives; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Ink; +using System.Windows.Input; +using System.Windows.Markup; +using System.Windows.Media; +using System.Windows.Media.Animation; +using System.Windows.Media.Effects; +using System.Windows.Media.Imaging; +using System.Windows.Media.Media3D; +using System.Windows.Media.TextFormatting; +using System.Windows.Navigation; +using System.Windows.Shapes; +using System.Windows.Shell; +using leak_test_project.ViewModels; + + +namespace leak_test_project { + + + /// + /// MainWindow + /// + public partial class MainWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector { + + + #line 36 "..\..\MainWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.TextBlock txtCurrentDateTime; + + #line default + #line hidden + + + #line 49 "..\..\MainWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.Button btnMaximize; + + #line default + #line hidden + + + #line 50 "..\..\MainWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.TextBlock txtMaximizeIcon; + + #line default + #line hidden + + private bool _contentLoaded; + + /// + /// InitializeComponent + /// + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + public void InitializeComponent() { + if (_contentLoaded) { + return; + } + _contentLoaded = true; + System.Uri resourceLocater = new System.Uri("/leak_test_project;component/mainwindow.xaml", System.UriKind.Relative); + + #line 1 "..\..\MainWindow.xaml" + System.Windows.Application.LoadComponent(this, resourceLocater); + + #line default + #line hidden + } + + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")] + void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { + switch (connectionId) + { + case 1: + + #line 21 "..\..\MainWindow.xaml" + ((System.Windows.Controls.Border)(target)).MouseLeftButtonDown += new System.Windows.Input.MouseButtonEventHandler(this.TopBar_MouseLeftButtonDown); + + #line default + #line hidden + return; + case 2: + this.txtCurrentDateTime = ((System.Windows.Controls.TextBlock)(target)); + return; + case 3: + + #line 46 "..\..\MainWindow.xaml" + ((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.BtnMinimize_Click); + + #line default + #line hidden + return; + case 4: + this.btnMaximize = ((System.Windows.Controls.Button)(target)); + + #line 49 "..\..\MainWindow.xaml" + this.btnMaximize.Click += new System.Windows.RoutedEventHandler(this.BtnMaximize_Click); + + #line default + #line hidden + return; + case 5: + this.txtMaximizeIcon = ((System.Windows.Controls.TextBlock)(target)); + return; + } + this._contentLoaded = true; + } + } +} + diff --git a/leak_test_project/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll b/leak_test_project/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll new file mode 100644 index 0000000..50db2ef Binary files /dev/null and b/leak_test_project/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll differ diff --git a/leak_test_project/obj/Debug/Views/CommunicationWindow.baml b/leak_test_project/obj/Debug/Views/CommunicationWindow.baml new file mode 100644 index 0000000..d022021 Binary files /dev/null and b/leak_test_project/obj/Debug/Views/CommunicationWindow.baml differ diff --git a/leak_test_project/obj/Debug/Views/CommunicationWindow.g.cs b/leak_test_project/obj/Debug/Views/CommunicationWindow.g.cs new file mode 100644 index 0000000..247505c --- /dev/null +++ b/leak_test_project/obj/Debug/Views/CommunicationWindow.g.cs @@ -0,0 +1,199 @@ +#pragma checksum "..\..\..\Views\CommunicationWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "AF544BD3712CB303CB302F9AA68E55C5B6921446AD339B379C071FBD012AAE60" +//------------------------------------------------------------------------------ +// +// 이 코드는 도구를 사용하여 생성되었습니다. +// 런타임 버전:4.0.30319.42000 +// +// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +// 이러한 변경 내용이 손실됩니다. +// +//------------------------------------------------------------------------------ + +using System; +using System.Diagnostics; +using System.Windows; +using System.Windows.Automation; +using System.Windows.Controls; +using System.Windows.Controls.Primitives; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Ink; +using System.Windows.Input; +using System.Windows.Markup; +using System.Windows.Media; +using System.Windows.Media.Animation; +using System.Windows.Media.Effects; +using System.Windows.Media.Imaging; +using System.Windows.Media.Media3D; +using System.Windows.Media.TextFormatting; +using System.Windows.Navigation; +using System.Windows.Shapes; +using System.Windows.Shell; + + +namespace leak_test_project.Views { + + + /// + /// CommunicationWindow + /// + public partial class CommunicationWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector { + + + #line 75 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.ComboBox cbIdSensorType; + + #line default + #line hidden + + + #line 91 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.ComboBox cbZmdiBaudRate; + + #line default + #line hidden + + + #line 106 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.ComboBox cbLeftPort; + + #line default + #line hidden + + + #line 116 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.ComboBox cbRightPort; + + #line default + #line hidden + + + #line 131 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.ComboBox cbSensorBaudRate; + + #line default + #line hidden + + + #line 146 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.ComboBox cbSensorPort; + + #line default + #line hidden + + + #line 158 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.ComboBox cbBoard4253BaudRate; + + #line default + #line hidden + + + #line 173 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.ComboBox cbBoard4253Port; + + #line default + #line hidden + + + #line 183 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.Button btnSave; + + #line default + #line hidden + + + #line 184 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.Button btnClose; + + #line default + #line hidden + + private bool _contentLoaded; + + /// + /// InitializeComponent + /// + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + public void InitializeComponent() { + if (_contentLoaded) { + return; + } + _contentLoaded = true; + System.Uri resourceLocater = new System.Uri("/leak_test_project;component/views/communicationwindow.xaml", System.UriKind.Relative); + + #line 1 "..\..\..\Views\CommunicationWindow.xaml" + System.Windows.Application.LoadComponent(this, resourceLocater); + + #line default + #line hidden + } + + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")] + void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { + switch (connectionId) + { + case 1: + this.cbIdSensorType = ((System.Windows.Controls.ComboBox)(target)); + return; + case 2: + this.cbZmdiBaudRate = ((System.Windows.Controls.ComboBox)(target)); + return; + case 3: + this.cbLeftPort = ((System.Windows.Controls.ComboBox)(target)); + return; + case 4: + this.cbRightPort = ((System.Windows.Controls.ComboBox)(target)); + return; + case 5: + this.cbSensorBaudRate = ((System.Windows.Controls.ComboBox)(target)); + return; + case 6: + this.cbSensorPort = ((System.Windows.Controls.ComboBox)(target)); + return; + case 7: + this.cbBoard4253BaudRate = ((System.Windows.Controls.ComboBox)(target)); + return; + case 8: + this.cbBoard4253Port = ((System.Windows.Controls.ComboBox)(target)); + return; + case 9: + this.btnSave = ((System.Windows.Controls.Button)(target)); + + #line 183 "..\..\..\Views\CommunicationWindow.xaml" + this.btnSave.Click += new System.Windows.RoutedEventHandler(this.BtnSave_Click); + + #line default + #line hidden + return; + case 10: + this.btnClose = ((System.Windows.Controls.Button)(target)); + + #line 184 "..\..\..\Views\CommunicationWindow.xaml" + this.btnClose.Click += new System.Windows.RoutedEventHandler(this.BtnClose_Click); + + #line default + #line hidden + return; + } + this._contentLoaded = true; + } + } +} + diff --git a/leak_test_project/obj/Debug/Views/CommunicationWindow.g.i.cs b/leak_test_project/obj/Debug/Views/CommunicationWindow.g.i.cs new file mode 100644 index 0000000..247505c --- /dev/null +++ b/leak_test_project/obj/Debug/Views/CommunicationWindow.g.i.cs @@ -0,0 +1,199 @@ +#pragma checksum "..\..\..\Views\CommunicationWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "AF544BD3712CB303CB302F9AA68E55C5B6921446AD339B379C071FBD012AAE60" +//------------------------------------------------------------------------------ +// +// 이 코드는 도구를 사용하여 생성되었습니다. +// 런타임 버전:4.0.30319.42000 +// +// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +// 이러한 변경 내용이 손실됩니다. +// +//------------------------------------------------------------------------------ + +using System; +using System.Diagnostics; +using System.Windows; +using System.Windows.Automation; +using System.Windows.Controls; +using System.Windows.Controls.Primitives; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Ink; +using System.Windows.Input; +using System.Windows.Markup; +using System.Windows.Media; +using System.Windows.Media.Animation; +using System.Windows.Media.Effects; +using System.Windows.Media.Imaging; +using System.Windows.Media.Media3D; +using System.Windows.Media.TextFormatting; +using System.Windows.Navigation; +using System.Windows.Shapes; +using System.Windows.Shell; + + +namespace leak_test_project.Views { + + + /// + /// CommunicationWindow + /// + public partial class CommunicationWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector { + + + #line 75 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.ComboBox cbIdSensorType; + + #line default + #line hidden + + + #line 91 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.ComboBox cbZmdiBaudRate; + + #line default + #line hidden + + + #line 106 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.ComboBox cbLeftPort; + + #line default + #line hidden + + + #line 116 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.ComboBox cbRightPort; + + #line default + #line hidden + + + #line 131 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.ComboBox cbSensorBaudRate; + + #line default + #line hidden + + + #line 146 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.ComboBox cbSensorPort; + + #line default + #line hidden + + + #line 158 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.ComboBox cbBoard4253BaudRate; + + #line default + #line hidden + + + #line 173 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.ComboBox cbBoard4253Port; + + #line default + #line hidden + + + #line 183 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.Button btnSave; + + #line default + #line hidden + + + #line 184 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.Button btnClose; + + #line default + #line hidden + + private bool _contentLoaded; + + /// + /// InitializeComponent + /// + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + public void InitializeComponent() { + if (_contentLoaded) { + return; + } + _contentLoaded = true; + System.Uri resourceLocater = new System.Uri("/leak_test_project;component/views/communicationwindow.xaml", System.UriKind.Relative); + + #line 1 "..\..\..\Views\CommunicationWindow.xaml" + System.Windows.Application.LoadComponent(this, resourceLocater); + + #line default + #line hidden + } + + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")] + void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { + switch (connectionId) + { + case 1: + this.cbIdSensorType = ((System.Windows.Controls.ComboBox)(target)); + return; + case 2: + this.cbZmdiBaudRate = ((System.Windows.Controls.ComboBox)(target)); + return; + case 3: + this.cbLeftPort = ((System.Windows.Controls.ComboBox)(target)); + return; + case 4: + this.cbRightPort = ((System.Windows.Controls.ComboBox)(target)); + return; + case 5: + this.cbSensorBaudRate = ((System.Windows.Controls.ComboBox)(target)); + return; + case 6: + this.cbSensorPort = ((System.Windows.Controls.ComboBox)(target)); + return; + case 7: + this.cbBoard4253BaudRate = ((System.Windows.Controls.ComboBox)(target)); + return; + case 8: + this.cbBoard4253Port = ((System.Windows.Controls.ComboBox)(target)); + return; + case 9: + this.btnSave = ((System.Windows.Controls.Button)(target)); + + #line 183 "..\..\..\Views\CommunicationWindow.xaml" + this.btnSave.Click += new System.Windows.RoutedEventHandler(this.BtnSave_Click); + + #line default + #line hidden + return; + case 10: + this.btnClose = ((System.Windows.Controls.Button)(target)); + + #line 184 "..\..\..\Views\CommunicationWindow.xaml" + this.btnClose.Click += new System.Windows.RoutedEventHandler(this.BtnClose_Click); + + #line default + #line hidden + return; + } + this._contentLoaded = true; + } + } +} + diff --git a/leak_test_project/obj/Debug/Views/DataView.baml b/leak_test_project/obj/Debug/Views/DataView.baml new file mode 100644 index 0000000..4a2b47f Binary files /dev/null and b/leak_test_project/obj/Debug/Views/DataView.baml differ diff --git a/leak_test_project/obj/Debug/Views/DataView.g.cs b/leak_test_project/obj/Debug/Views/DataView.g.cs new file mode 100644 index 0000000..89bbb2f --- /dev/null +++ b/leak_test_project/obj/Debug/Views/DataView.g.cs @@ -0,0 +1,93 @@ +#pragma checksum "..\..\..\Views\DataView.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "3817A6627B503D085EDFEB1BF6AD88D4A23D1775086B1CA3BC0ADB5F4D94D266" +//------------------------------------------------------------------------------ +// +// 이 코드는 도구를 사용하여 생성되었습니다. +// 런타임 버전:4.0.30319.42000 +// +// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +// 이러한 변경 내용이 손실됩니다. +// +//------------------------------------------------------------------------------ + +using System; +using System.Diagnostics; +using System.Windows; +using System.Windows.Automation; +using System.Windows.Controls; +using System.Windows.Controls.Primitives; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Ink; +using System.Windows.Input; +using System.Windows.Markup; +using System.Windows.Media; +using System.Windows.Media.Animation; +using System.Windows.Media.Effects; +using System.Windows.Media.Imaging; +using System.Windows.Media.Media3D; +using System.Windows.Media.TextFormatting; +using System.Windows.Navigation; +using System.Windows.Shapes; +using System.Windows.Shell; + + +namespace leak_test_project.Views { + + + /// + /// DataView + /// + public partial class DataView : System.Windows.Controls.UserControl, System.Windows.Markup.IComponentConnector { + + private bool _contentLoaded; + + /// + /// InitializeComponent + /// + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + public void InitializeComponent() { + if (_contentLoaded) { + return; + } + _contentLoaded = true; + System.Uri resourceLocater = new System.Uri("/leak_test_project;component/views/dataview.xaml", System.UriKind.Relative); + + #line 1 "..\..\..\Views\DataView.xaml" + System.Windows.Application.LoadComponent(this, resourceLocater); + + #line default + #line hidden + } + + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")] + void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { + switch (connectionId) + { + case 1: + + #line 134 "..\..\..\Views\DataView.xaml" + ((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Button_Click); + + #line default + #line hidden + return; + case 2: + + #line 145 "..\..\..\Views\DataView.xaml" + ((System.Windows.Controls.DataGrid)(target)).SelectionChanged += new System.Windows.Controls.SelectionChangedEventHandler(this.DataGrid_SelectionChanged); + + #line default + #line hidden + return; + } + this._contentLoaded = true; + } + } +} + diff --git a/leak_test_project/obj/Debug/Views/DataView.g.i.cs b/leak_test_project/obj/Debug/Views/DataView.g.i.cs new file mode 100644 index 0000000..89bbb2f --- /dev/null +++ b/leak_test_project/obj/Debug/Views/DataView.g.i.cs @@ -0,0 +1,93 @@ +#pragma checksum "..\..\..\Views\DataView.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "3817A6627B503D085EDFEB1BF6AD88D4A23D1775086B1CA3BC0ADB5F4D94D266" +//------------------------------------------------------------------------------ +// +// 이 코드는 도구를 사용하여 생성되었습니다. +// 런타임 버전:4.0.30319.42000 +// +// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +// 이러한 변경 내용이 손실됩니다. +// +//------------------------------------------------------------------------------ + +using System; +using System.Diagnostics; +using System.Windows; +using System.Windows.Automation; +using System.Windows.Controls; +using System.Windows.Controls.Primitives; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Ink; +using System.Windows.Input; +using System.Windows.Markup; +using System.Windows.Media; +using System.Windows.Media.Animation; +using System.Windows.Media.Effects; +using System.Windows.Media.Imaging; +using System.Windows.Media.Media3D; +using System.Windows.Media.TextFormatting; +using System.Windows.Navigation; +using System.Windows.Shapes; +using System.Windows.Shell; + + +namespace leak_test_project.Views { + + + /// + /// DataView + /// + public partial class DataView : System.Windows.Controls.UserControl, System.Windows.Markup.IComponentConnector { + + private bool _contentLoaded; + + /// + /// InitializeComponent + /// + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + public void InitializeComponent() { + if (_contentLoaded) { + return; + } + _contentLoaded = true; + System.Uri resourceLocater = new System.Uri("/leak_test_project;component/views/dataview.xaml", System.UriKind.Relative); + + #line 1 "..\..\..\Views\DataView.xaml" + System.Windows.Application.LoadComponent(this, resourceLocater); + + #line default + #line hidden + } + + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")] + void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { + switch (connectionId) + { + case 1: + + #line 134 "..\..\..\Views\DataView.xaml" + ((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Button_Click); + + #line default + #line hidden + return; + case 2: + + #line 145 "..\..\..\Views\DataView.xaml" + ((System.Windows.Controls.DataGrid)(target)).SelectionChanged += new System.Windows.Controls.SelectionChangedEventHandler(this.DataGrid_SelectionChanged); + + #line default + #line hidden + return; + } + this._contentLoaded = true; + } + } +} + diff --git a/leak_test_project/obj/Debug/Views/HomeView.baml b/leak_test_project/obj/Debug/Views/HomeView.baml new file mode 100644 index 0000000..8f84030 Binary files /dev/null and b/leak_test_project/obj/Debug/Views/HomeView.baml differ diff --git a/leak_test_project/obj/Debug/Views/HomeView.g.cs b/leak_test_project/obj/Debug/Views/HomeView.g.cs new file mode 100644 index 0000000..ade120d --- /dev/null +++ b/leak_test_project/obj/Debug/Views/HomeView.g.cs @@ -0,0 +1,75 @@ +#pragma checksum "..\..\..\Views\HomeView.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "2921BB4A069CB2EEEC799AE758E9C631287817D22AABE0AE39C97B7738A1BC9F" +//------------------------------------------------------------------------------ +// +// 이 코드는 도구를 사용하여 생성되었습니다. +// 런타임 버전:4.0.30319.42000 +// +// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +// 이러한 변경 내용이 손실됩니다. +// +//------------------------------------------------------------------------------ + +using System; +using System.Diagnostics; +using System.Windows; +using System.Windows.Automation; +using System.Windows.Controls; +using System.Windows.Controls.Primitives; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Ink; +using System.Windows.Input; +using System.Windows.Markup; +using System.Windows.Media; +using System.Windows.Media.Animation; +using System.Windows.Media.Effects; +using System.Windows.Media.Imaging; +using System.Windows.Media.Media3D; +using System.Windows.Media.TextFormatting; +using System.Windows.Navigation; +using System.Windows.Shapes; +using System.Windows.Shell; +using leak_test_project.Views; + + +namespace leak_test_project.Views { + + + /// + /// HomeView + /// + public partial class HomeView : System.Windows.Controls.UserControl, System.Windows.Markup.IComponentConnector { + + private bool _contentLoaded; + + /// + /// InitializeComponent + /// + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + public void InitializeComponent() { + if (_contentLoaded) { + return; + } + _contentLoaded = true; + System.Uri resourceLocater = new System.Uri("/leak_test_project;component/views/homeview.xaml", System.UriKind.Relative); + + #line 1 "..\..\..\Views\HomeView.xaml" + System.Windows.Application.LoadComponent(this, resourceLocater); + + #line default + #line hidden + } + + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")] + void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { + this._contentLoaded = true; + } + } +} + diff --git a/leak_test_project/obj/Debug/Views/HomeView.g.i.cs b/leak_test_project/obj/Debug/Views/HomeView.g.i.cs new file mode 100644 index 0000000..ade120d --- /dev/null +++ b/leak_test_project/obj/Debug/Views/HomeView.g.i.cs @@ -0,0 +1,75 @@ +#pragma checksum "..\..\..\Views\HomeView.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "2921BB4A069CB2EEEC799AE758E9C631287817D22AABE0AE39C97B7738A1BC9F" +//------------------------------------------------------------------------------ +// +// 이 코드는 도구를 사용하여 생성되었습니다. +// 런타임 버전:4.0.30319.42000 +// +// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +// 이러한 변경 내용이 손실됩니다. +// +//------------------------------------------------------------------------------ + +using System; +using System.Diagnostics; +using System.Windows; +using System.Windows.Automation; +using System.Windows.Controls; +using System.Windows.Controls.Primitives; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Ink; +using System.Windows.Input; +using System.Windows.Markup; +using System.Windows.Media; +using System.Windows.Media.Animation; +using System.Windows.Media.Effects; +using System.Windows.Media.Imaging; +using System.Windows.Media.Media3D; +using System.Windows.Media.TextFormatting; +using System.Windows.Navigation; +using System.Windows.Shapes; +using System.Windows.Shell; +using leak_test_project.Views; + + +namespace leak_test_project.Views { + + + /// + /// HomeView + /// + public partial class HomeView : System.Windows.Controls.UserControl, System.Windows.Markup.IComponentConnector { + + private bool _contentLoaded; + + /// + /// InitializeComponent + /// + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + public void InitializeComponent() { + if (_contentLoaded) { + return; + } + _contentLoaded = true; + System.Uri resourceLocater = new System.Uri("/leak_test_project;component/views/homeview.xaml", System.UriKind.Relative); + + #line 1 "..\..\..\Views\HomeView.xaml" + System.Windows.Application.LoadComponent(this, resourceLocater); + + #line default + #line hidden + } + + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")] + void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { + this._contentLoaded = true; + } + } +} + diff --git a/leak_test_project/obj/Debug/Views/InOutView.baml b/leak_test_project/obj/Debug/Views/InOutView.baml new file mode 100644 index 0000000..9a1cce4 Binary files /dev/null and b/leak_test_project/obj/Debug/Views/InOutView.baml differ diff --git a/leak_test_project/obj/Debug/Views/InOutView.g.cs b/leak_test_project/obj/Debug/Views/InOutView.g.cs new file mode 100644 index 0000000..d59cdbf --- /dev/null +++ b/leak_test_project/obj/Debug/Views/InOutView.g.cs @@ -0,0 +1,74 @@ +#pragma checksum "..\..\..\Views\InOutView.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "844535C614FAAEAAC0E33B7C2C6398266B7ABF9A1246F1791A96D0110B0A029D" +//------------------------------------------------------------------------------ +// +// 이 코드는 도구를 사용하여 생성되었습니다. +// 런타임 버전:4.0.30319.42000 +// +// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +// 이러한 변경 내용이 손실됩니다. +// +//------------------------------------------------------------------------------ + +using System; +using System.Diagnostics; +using System.Windows; +using System.Windows.Automation; +using System.Windows.Controls; +using System.Windows.Controls.Primitives; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Ink; +using System.Windows.Input; +using System.Windows.Markup; +using System.Windows.Media; +using System.Windows.Media.Animation; +using System.Windows.Media.Effects; +using System.Windows.Media.Imaging; +using System.Windows.Media.Media3D; +using System.Windows.Media.TextFormatting; +using System.Windows.Navigation; +using System.Windows.Shapes; +using System.Windows.Shell; + + +namespace leak_test_project.Views { + + + /// + /// InOutView + /// + public partial class InOutView : System.Windows.Controls.UserControl, System.Windows.Markup.IComponentConnector { + + private bool _contentLoaded; + + /// + /// InitializeComponent + /// + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + public void InitializeComponent() { + if (_contentLoaded) { + return; + } + _contentLoaded = true; + System.Uri resourceLocater = new System.Uri("/leak_test_project;component/views/inoutview.xaml", System.UriKind.Relative); + + #line 1 "..\..\..\Views\InOutView.xaml" + System.Windows.Application.LoadComponent(this, resourceLocater); + + #line default + #line hidden + } + + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")] + void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { + this._contentLoaded = true; + } + } +} + diff --git a/leak_test_project/obj/Debug/Views/InOutView.g.i.cs b/leak_test_project/obj/Debug/Views/InOutView.g.i.cs new file mode 100644 index 0000000..d59cdbf --- /dev/null +++ b/leak_test_project/obj/Debug/Views/InOutView.g.i.cs @@ -0,0 +1,74 @@ +#pragma checksum "..\..\..\Views\InOutView.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "844535C614FAAEAAC0E33B7C2C6398266B7ABF9A1246F1791A96D0110B0A029D" +//------------------------------------------------------------------------------ +// +// 이 코드는 도구를 사용하여 생성되었습니다. +// 런타임 버전:4.0.30319.42000 +// +// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +// 이러한 변경 내용이 손실됩니다. +// +//------------------------------------------------------------------------------ + +using System; +using System.Diagnostics; +using System.Windows; +using System.Windows.Automation; +using System.Windows.Controls; +using System.Windows.Controls.Primitives; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Ink; +using System.Windows.Input; +using System.Windows.Markup; +using System.Windows.Media; +using System.Windows.Media.Animation; +using System.Windows.Media.Effects; +using System.Windows.Media.Imaging; +using System.Windows.Media.Media3D; +using System.Windows.Media.TextFormatting; +using System.Windows.Navigation; +using System.Windows.Shapes; +using System.Windows.Shell; + + +namespace leak_test_project.Views { + + + /// + /// InOutView + /// + public partial class InOutView : System.Windows.Controls.UserControl, System.Windows.Markup.IComponentConnector { + + private bool _contentLoaded; + + /// + /// InitializeComponent + /// + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + public void InitializeComponent() { + if (_contentLoaded) { + return; + } + _contentLoaded = true; + System.Uri resourceLocater = new System.Uri("/leak_test_project;component/views/inoutview.xaml", System.UriKind.Relative); + + #line 1 "..\..\..\Views\InOutView.xaml" + System.Windows.Application.LoadComponent(this, resourceLocater); + + #line default + #line hidden + } + + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")] + void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { + this._contentLoaded = true; + } + } +} + diff --git a/leak_test_project/obj/Debug/Views/ParametersWindow.baml b/leak_test_project/obj/Debug/Views/ParametersWindow.baml new file mode 100644 index 0000000..17279ad Binary files /dev/null and b/leak_test_project/obj/Debug/Views/ParametersWindow.baml differ diff --git a/leak_test_project/obj/Debug/Views/ParametersWindow.g.cs b/leak_test_project/obj/Debug/Views/ParametersWindow.g.cs new file mode 100644 index 0000000..b9fb6d4 --- /dev/null +++ b/leak_test_project/obj/Debug/Views/ParametersWindow.g.cs @@ -0,0 +1,133 @@ +#pragma checksum "..\..\..\Views\ParametersWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "B47DEFE5EE4215432A6DBFBCF117D9F4C3BCC029E31F9BD3BD0D06811429D93A" +//------------------------------------------------------------------------------ +// +// 이 코드는 도구를 사용하여 생성되었습니다. +// 런타임 버전:4.0.30319.42000 +// +// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +// 이러한 변경 내용이 손실됩니다. +// +//------------------------------------------------------------------------------ + +using System; +using System.Diagnostics; +using System.Windows; +using System.Windows.Automation; +using System.Windows.Controls; +using System.Windows.Controls.Primitives; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Ink; +using System.Windows.Input; +using System.Windows.Markup; +using System.Windows.Media; +using System.Windows.Media.Animation; +using System.Windows.Media.Effects; +using System.Windows.Media.Imaging; +using System.Windows.Media.Media3D; +using System.Windows.Media.TextFormatting; +using System.Windows.Navigation; +using System.Windows.Shapes; +using System.Windows.Shell; + + +namespace leak_test_project.Views { + + + /// + /// ParametersWindow + /// + public partial class ParametersWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector { + + + #line 79 "..\..\..\Views\ParametersWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.TextBox editSpecUL; + + #line default + #line hidden + + + #line 89 "..\..\..\Views\ParametersWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.TextBox editSpecLL; + + #line default + #line hidden + + + #line 99 "..\..\..\Views\ParametersWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.Button btnSave; + + #line default + #line hidden + + + #line 100 "..\..\..\Views\ParametersWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.Button btnClose; + + #line default + #line hidden + + private bool _contentLoaded; + + /// + /// InitializeComponent + /// + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + public void InitializeComponent() { + if (_contentLoaded) { + return; + } + _contentLoaded = true; + System.Uri resourceLocater = new System.Uri("/leak_test_project;component/views/parameterswindow.xaml", System.UriKind.Relative); + + #line 1 "..\..\..\Views\ParametersWindow.xaml" + System.Windows.Application.LoadComponent(this, resourceLocater); + + #line default + #line hidden + } + + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")] + void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { + switch (connectionId) + { + case 1: + this.editSpecUL = ((System.Windows.Controls.TextBox)(target)); + return; + case 2: + this.editSpecLL = ((System.Windows.Controls.TextBox)(target)); + return; + case 3: + this.btnSave = ((System.Windows.Controls.Button)(target)); + + #line 99 "..\..\..\Views\ParametersWindow.xaml" + this.btnSave.Click += new System.Windows.RoutedEventHandler(this.BtnSave_Click); + + #line default + #line hidden + return; + case 4: + this.btnClose = ((System.Windows.Controls.Button)(target)); + + #line 100 "..\..\..\Views\ParametersWindow.xaml" + this.btnClose.Click += new System.Windows.RoutedEventHandler(this.BtnClose_Click); + + #line default + #line hidden + return; + } + this._contentLoaded = true; + } + } +} + diff --git a/leak_test_project/obj/Debug/Views/ParametersWindow.g.i.cs b/leak_test_project/obj/Debug/Views/ParametersWindow.g.i.cs new file mode 100644 index 0000000..b9fb6d4 --- /dev/null +++ b/leak_test_project/obj/Debug/Views/ParametersWindow.g.i.cs @@ -0,0 +1,133 @@ +#pragma checksum "..\..\..\Views\ParametersWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "B47DEFE5EE4215432A6DBFBCF117D9F4C3BCC029E31F9BD3BD0D06811429D93A" +//------------------------------------------------------------------------------ +// +// 이 코드는 도구를 사용하여 생성되었습니다. +// 런타임 버전:4.0.30319.42000 +// +// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +// 이러한 변경 내용이 손실됩니다. +// +//------------------------------------------------------------------------------ + +using System; +using System.Diagnostics; +using System.Windows; +using System.Windows.Automation; +using System.Windows.Controls; +using System.Windows.Controls.Primitives; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Ink; +using System.Windows.Input; +using System.Windows.Markup; +using System.Windows.Media; +using System.Windows.Media.Animation; +using System.Windows.Media.Effects; +using System.Windows.Media.Imaging; +using System.Windows.Media.Media3D; +using System.Windows.Media.TextFormatting; +using System.Windows.Navigation; +using System.Windows.Shapes; +using System.Windows.Shell; + + +namespace leak_test_project.Views { + + + /// + /// ParametersWindow + /// + public partial class ParametersWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector { + + + #line 79 "..\..\..\Views\ParametersWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.TextBox editSpecUL; + + #line default + #line hidden + + + #line 89 "..\..\..\Views\ParametersWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.TextBox editSpecLL; + + #line default + #line hidden + + + #line 99 "..\..\..\Views\ParametersWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.Button btnSave; + + #line default + #line hidden + + + #line 100 "..\..\..\Views\ParametersWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.Button btnClose; + + #line default + #line hidden + + private bool _contentLoaded; + + /// + /// InitializeComponent + /// + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + public void InitializeComponent() { + if (_contentLoaded) { + return; + } + _contentLoaded = true; + System.Uri resourceLocater = new System.Uri("/leak_test_project;component/views/parameterswindow.xaml", System.UriKind.Relative); + + #line 1 "..\..\..\Views\ParametersWindow.xaml" + System.Windows.Application.LoadComponent(this, resourceLocater); + + #line default + #line hidden + } + + [System.Diagnostics.DebuggerNonUserCodeAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")] + [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")] + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")] + void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) { + switch (connectionId) + { + case 1: + this.editSpecUL = ((System.Windows.Controls.TextBox)(target)); + return; + case 2: + this.editSpecLL = ((System.Windows.Controls.TextBox)(target)); + return; + case 3: + this.btnSave = ((System.Windows.Controls.Button)(target)); + + #line 99 "..\..\..\Views\ParametersWindow.xaml" + this.btnSave.Click += new System.Windows.RoutedEventHandler(this.BtnSave_Click); + + #line default + #line hidden + return; + case 4: + this.btnClose = ((System.Windows.Controls.Button)(target)); + + #line 100 "..\..\..\Views\ParametersWindow.xaml" + this.btnClose.Click += new System.Windows.RoutedEventHandler(this.BtnClose_Click); + + #line default + #line hidden + return; + } + this._contentLoaded = true; + } + } +} + diff --git a/leak_test_project/obj/Debug/leak_test_project.application b/leak_test_project/obj/Debug/leak_test_project.application index 5aea24e..2130e12 100644 --- a/leak_test_project/obj/Debug/leak_test_project.application +++ b/leak_test_project/obj/Debug/leak_test_project.application @@ -1,20 +1,20 @@  - + - - + + - ZVNslA44bMsOvDWECIypEv8SmpP+p8l/CiQk7HS9J1w= + 6+b0r1Gncm2nD/TjBHVCWtS6O3CAXOdxRTwtx09ap8E= diff --git a/leak_test_project/obj/Debug/leak_test_project.csproj.AssemblyReference.cache b/leak_test_project/obj/Debug/leak_test_project.csproj.AssemblyReference.cache index 82b091c..5bc2e78 100644 Binary files a/leak_test_project/obj/Debug/leak_test_project.csproj.AssemblyReference.cache and b/leak_test_project/obj/Debug/leak_test_project.csproj.AssemblyReference.cache differ diff --git a/leak_test_project/obj/Debug/leak_test_project.csproj.CoreCompileInputs.cache b/leak_test_project/obj/Debug/leak_test_project.csproj.CoreCompileInputs.cache index 199cdc2..e7a1d7e 100644 --- a/leak_test_project/obj/Debug/leak_test_project.csproj.CoreCompileInputs.cache +++ b/leak_test_project/obj/Debug/leak_test_project.csproj.CoreCompileInputs.cache @@ -1 +1 @@ -3ea4cced1ce06f55502d36f8b03939a089cba33ab891d02ca7a78bcdee03bf9b +e34b793bb8bcf09fd6cf0746c906a5cb6a41ebb454d1a15e8953c71a7b0a3a10 diff --git a/leak_test_project/obj/Debug/leak_test_project.csproj.FileListAbsolute.txt b/leak_test_project/obj/Debug/leak_test_project.csproj.FileListAbsolute.txt index 1d01369..25b6869 100644 --- a/leak_test_project/obj/Debug/leak_test_project.csproj.FileListAbsolute.txt +++ b/leak_test_project/obj/Debug/leak_test_project.csproj.FileListAbsolute.txt @@ -11,3 +11,22 @@ C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\le C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\leak_test_project.application C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\leak_test_project.exe C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\leak_test_project.pdb +C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\Views\InOutView.baml +C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\Views\DataView.baml +C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\Views\ParametersWindow.baml +C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\Views\CommunicationWindow.baml +C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\Views\HomeView.g.cs +C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\Views\InOutView.g.cs +C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\Views\DataView.g.cs +C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\Views\ParametersWindow.g.cs +C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\Views\CommunicationWindow.g.cs +C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\MainWindow.g.cs +C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\App.g.cs +C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\leak_test_project_Content.g.cs +C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\GeneratedInternalTypeHelper.g.cs +C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\leak_test_project_MarkupCompile.cache +C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\leak_test_project_MarkupCompile.lref +C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\App.baml +C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\Views\HomeView.baml +C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\MainWindow.baml +C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\leak_test_project.g.resources diff --git a/leak_test_project/obj/Debug/leak_test_project.exe b/leak_test_project/obj/Debug/leak_test_project.exe index d4ef5d6..f73bb6c 100644 Binary files a/leak_test_project/obj/Debug/leak_test_project.exe and b/leak_test_project/obj/Debug/leak_test_project.exe differ diff --git a/leak_test_project/obj/Debug/leak_test_project.exe.manifest b/leak_test_project/obj/Debug/leak_test_project.exe.manifest index 0ec6774..e4f39d0 100644 --- a/leak_test_project/obj/Debug/leak_test_project.exe.manifest +++ b/leak_test_project/obj/Debug/leak_test_project.exe.manifest @@ -1,6 +1,6 @@  - + @@ -32,7 +32,7 @@ - + @@ -42,14 +42,14 @@ - + - Hk89URW/8JRbm5i4mtE97JaiiFEb87B1kc8GaoCCIok= + WIlRaRAkyOL/i77TGkCYPDQrXlpbIq1b8rVePHEWnCQ= @@ -62,4 +62,13 @@ R+Wg8QGvQVHX8T0ta/qbhH1bXkqY0fRnS3wBV3J0bN8= + + + + + + + pDB54gSYV5M/tu2DZtDUj13HUp3HrRLSNr97K/nGHh4= + + \ No newline at end of file diff --git a/leak_test_project/obj/Debug/leak_test_project.g.resources b/leak_test_project/obj/Debug/leak_test_project.g.resources new file mode 100644 index 0000000..1adb6f4 Binary files /dev/null and b/leak_test_project/obj/Debug/leak_test_project.g.resources differ diff --git a/leak_test_project/obj/Debug/leak_test_project.pdb b/leak_test_project/obj/Debug/leak_test_project.pdb index 7abacdb..b6bbe53 100644 Binary files a/leak_test_project/obj/Debug/leak_test_project.pdb and b/leak_test_project/obj/Debug/leak_test_project.pdb differ diff --git a/leak_test_project/obj/Debug/leak_test_project_Content.g.cs b/leak_test_project/obj/Debug/leak_test_project_Content.g.cs new file mode 100644 index 0000000..71034a6 --- /dev/null +++ b/leak_test_project/obj/Debug/leak_test_project_Content.g.cs @@ -0,0 +1,13 @@ +//------------------------------------------------------------------------------ +// +// 이 코드는 도구를 사용하여 생성되었습니다. +// 런타임 버전:4.0.30319.42000 +// +// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +// 이러한 변경 내용이 손실됩니다. +// +//------------------------------------------------------------------------------ + +[assembly: System.Windows.Resources.AssemblyAssociatedContentFileAttribute("pci-dask.dll")] + + diff --git a/leak_test_project/obj/Debug/leak_test_project_Content.g.i.cs b/leak_test_project/obj/Debug/leak_test_project_Content.g.i.cs new file mode 100644 index 0000000..71034a6 --- /dev/null +++ b/leak_test_project/obj/Debug/leak_test_project_Content.g.i.cs @@ -0,0 +1,13 @@ +//------------------------------------------------------------------------------ +// +// 이 코드는 도구를 사용하여 생성되었습니다. +// 런타임 버전:4.0.30319.42000 +// +// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +// 이러한 변경 내용이 손실됩니다. +// +//------------------------------------------------------------------------------ + +[assembly: System.Windows.Resources.AssemblyAssociatedContentFileAttribute("pci-dask.dll")] + + diff --git a/leak_test_project/obj/Debug/leak_test_project_MarkupCompile.cache b/leak_test_project/obj/Debug/leak_test_project_MarkupCompile.cache new file mode 100644 index 0000000..fba2723 --- /dev/null +++ b/leak_test_project/obj/Debug/leak_test_project_MarkupCompile.cache @@ -0,0 +1,20 @@ +leak_test_project + + +winexe +C# +.cs +C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\ +leak_test_project +none +false +DEBUG;TRACE +C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\App.xaml +6627611856 +1-698605034 +44464663643 +14-767506772 +Views\HomeView.xaml;Views\InOutView.xaml;Views\DataView.xaml;Views\ParametersWindow.xaml;Views\CommunicationWindow.xaml;MainWindow.xaml; + +False + diff --git a/leak_test_project/obj/Debug/leak_test_project_MarkupCompile.i.cache b/leak_test_project/obj/Debug/leak_test_project_MarkupCompile.i.cache new file mode 100644 index 0000000..2dd7dd8 --- /dev/null +++ b/leak_test_project/obj/Debug/leak_test_project_MarkupCompile.i.cache @@ -0,0 +1,20 @@ +leak_test_project + + +winexe +C# +.cs +C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\ +leak_test_project +none +false +DEBUG;TRACE +C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\App.xaml +6627611856 +1-698605034 +45-1617424975 +14-767506772 +Views\HomeView.xaml;Views\InOutView.xaml;Views\DataView.xaml;Views\ParametersWindow.xaml;Views\CommunicationWindow.xaml;MainWindow.xaml; + +True + diff --git a/leak_test_project/obj/Debug/leak_test_project_MarkupCompile.i.lref b/leak_test_project/obj/Debug/leak_test_project_MarkupCompile.i.lref new file mode 100644 index 0000000..5cb1161 --- /dev/null +++ b/leak_test_project/obj/Debug/leak_test_project_MarkupCompile.i.lref @@ -0,0 +1,5 @@ +C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\GeneratedInternalTypeHelper.g.i.cs +FC:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\App.xaml;; +FC:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\Views\HomeView.xaml;; +FC:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\MainWindow.xaml;; + diff --git a/leak_test_project/obj/Debug/leak_test_project_MarkupCompile.lref b/leak_test_project/obj/Debug/leak_test_project_MarkupCompile.lref new file mode 100644 index 0000000..8a453f5 --- /dev/null +++ b/leak_test_project/obj/Debug/leak_test_project_MarkupCompile.lref @@ -0,0 +1,5 @@ +C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Debug\GeneratedInternalTypeHelper.g.cs +FC:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\App.xaml;; +FC:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\Views\HomeView.xaml;; +FC:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\MainWindow.xaml;; + diff --git a/leak_test_project/obj/Release/App.baml b/leak_test_project/obj/Release/App.baml deleted file mode 100644 index 89dc9c9..0000000 Binary files a/leak_test_project/obj/Release/App.baml and /dev/null differ diff --git a/leak_test_project/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache b/leak_test_project/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache index c8d80e2..b6d618b 100644 Binary files a/leak_test_project/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache and b/leak_test_project/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache differ diff --git a/leak_test_project/obj/Release/MainWindow.baml b/leak_test_project/obj/Release/MainWindow.baml deleted file mode 100644 index 9d6119f..0000000 Binary files a/leak_test_project/obj/Release/MainWindow.baml and /dev/null differ diff --git a/leak_test_project/obj/Release/MainWindow.g.cs b/leak_test_project/obj/Release/MainWindow.g.cs index ac1e0db..0961001 100644 --- a/leak_test_project/obj/Release/MainWindow.g.cs +++ b/leak_test_project/obj/Release/MainWindow.g.cs @@ -1,4 +1,4 @@ -#pragma checksum "..\..\MainWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "AC6B63D342AAA60FA134A9381169A7E50CCCC4A249937C592D6EBCFD954C2193" +#pragma checksum "..\..\MainWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "757CBCD9E21A494C9927096673B3DCAADE9698FAA3323F88DE79A3D94DB7FAA6" //------------------------------------------------------------------------------ // // 이 코드는 도구를 사용하여 생성되었습니다. @@ -49,7 +49,7 @@ namespace leak_test_project { #line hidden - #line 48 "..\..\MainWindow.xaml" + #line 49 "..\..\MainWindow.xaml" [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] internal System.Windows.Controls.Button btnMaximize; @@ -57,7 +57,7 @@ namespace leak_test_project { #line hidden - #line 49 "..\..\MainWindow.xaml" + #line 50 "..\..\MainWindow.xaml" [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] internal System.Windows.Controls.TextBlock txtMaximizeIcon; @@ -107,7 +107,7 @@ namespace leak_test_project { return; case 3: - #line 45 "..\..\MainWindow.xaml" + #line 46 "..\..\MainWindow.xaml" ((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.BtnMinimize_Click); #line default @@ -116,7 +116,7 @@ namespace leak_test_project { case 4: this.btnMaximize = ((System.Windows.Controls.Button)(target)); - #line 48 "..\..\MainWindow.xaml" + #line 49 "..\..\MainWindow.xaml" this.btnMaximize.Click += new System.Windows.RoutedEventHandler(this.BtnMaximize_Click); #line default diff --git a/leak_test_project/obj/Release/MainWindow.g.i.cs b/leak_test_project/obj/Release/MainWindow.g.i.cs index ac1e0db..0961001 100644 --- a/leak_test_project/obj/Release/MainWindow.g.i.cs +++ b/leak_test_project/obj/Release/MainWindow.g.i.cs @@ -1,4 +1,4 @@ -#pragma checksum "..\..\MainWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "AC6B63D342AAA60FA134A9381169A7E50CCCC4A249937C592D6EBCFD954C2193" +#pragma checksum "..\..\MainWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "757CBCD9E21A494C9927096673B3DCAADE9698FAA3323F88DE79A3D94DB7FAA6" //------------------------------------------------------------------------------ // // 이 코드는 도구를 사용하여 생성되었습니다. @@ -49,7 +49,7 @@ namespace leak_test_project { #line hidden - #line 48 "..\..\MainWindow.xaml" + #line 49 "..\..\MainWindow.xaml" [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] internal System.Windows.Controls.Button btnMaximize; @@ -57,7 +57,7 @@ namespace leak_test_project { #line hidden - #line 49 "..\..\MainWindow.xaml" + #line 50 "..\..\MainWindow.xaml" [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] internal System.Windows.Controls.TextBlock txtMaximizeIcon; @@ -107,7 +107,7 @@ namespace leak_test_project { return; case 3: - #line 45 "..\..\MainWindow.xaml" + #line 46 "..\..\MainWindow.xaml" ((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.BtnMinimize_Click); #line default @@ -116,7 +116,7 @@ namespace leak_test_project { case 4: this.btnMaximize = ((System.Windows.Controls.Button)(target)); - #line 48 "..\..\MainWindow.xaml" + #line 49 "..\..\MainWindow.xaml" this.btnMaximize.Click += new System.Windows.RoutedEventHandler(this.BtnMaximize_Click); #line default diff --git a/leak_test_project/obj/Release/Views/CommunicationWindow.baml b/leak_test_project/obj/Release/Views/CommunicationWindow.baml index b7eb792..240c1f9 100644 Binary files a/leak_test_project/obj/Release/Views/CommunicationWindow.baml and b/leak_test_project/obj/Release/Views/CommunicationWindow.baml differ diff --git a/leak_test_project/obj/Release/Views/CommunicationWindow.g.cs b/leak_test_project/obj/Release/Views/CommunicationWindow.g.cs index ca7db4a..247505c 100644 --- a/leak_test_project/obj/Release/Views/CommunicationWindow.g.cs +++ b/leak_test_project/obj/Release/Views/CommunicationWindow.g.cs @@ -1,4 +1,4 @@ -#pragma checksum "..\..\..\Views\CommunicationWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "08EC1AC75E99AD2A58E04E5956799F41C1396BEF9B944AADE201957A2910E01D" +#pragma checksum "..\..\..\Views\CommunicationWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "AF544BD3712CB303CB302F9AA68E55C5B6921446AD339B379C071FBD012AAE60" //------------------------------------------------------------------------------ // // 이 코드는 도구를 사용하여 생성되었습니다. @@ -40,9 +40,9 @@ namespace leak_test_project.Views { public partial class CommunicationWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector { - #line 76 "..\..\..\Views\CommunicationWindow.xaml" + #line 75 "..\..\..\Views\CommunicationWindow.xaml" [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] - internal System.Windows.Controls.ComboBox cbZmdiBaudRate; + internal System.Windows.Controls.ComboBox cbIdSensorType; #line default #line hidden @@ -50,13 +50,21 @@ namespace leak_test_project.Views { #line 91 "..\..\..\Views\CommunicationWindow.xaml" [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.ComboBox cbZmdiBaudRate; + + #line default + #line hidden + + + #line 106 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] internal System.Windows.Controls.ComboBox cbLeftPort; #line default #line hidden - #line 101 "..\..\..\Views\CommunicationWindow.xaml" + #line 116 "..\..\..\Views\CommunicationWindow.xaml" [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] internal System.Windows.Controls.ComboBox cbRightPort; @@ -64,7 +72,7 @@ namespace leak_test_project.Views { #line hidden - #line 116 "..\..\..\Views\CommunicationWindow.xaml" + #line 131 "..\..\..\Views\CommunicationWindow.xaml" [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] internal System.Windows.Controls.ComboBox cbSensorBaudRate; @@ -72,7 +80,7 @@ namespace leak_test_project.Views { #line hidden - #line 131 "..\..\..\Views\CommunicationWindow.xaml" + #line 146 "..\..\..\Views\CommunicationWindow.xaml" [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] internal System.Windows.Controls.ComboBox cbSensorPort; @@ -80,7 +88,23 @@ namespace leak_test_project.Views { #line hidden - #line 141 "..\..\..\Views\CommunicationWindow.xaml" + #line 158 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.ComboBox cbBoard4253BaudRate; + + #line default + #line hidden + + + #line 173 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.ComboBox cbBoard4253Port; + + #line default + #line hidden + + + #line 183 "..\..\..\Views\CommunicationWindow.xaml" [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] internal System.Windows.Controls.Button btnSave; @@ -88,7 +112,7 @@ namespace leak_test_project.Views { #line hidden - #line 142 "..\..\..\Views\CommunicationWindow.xaml" + #line 184 "..\..\..\Views\CommunicationWindow.xaml" [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] internal System.Windows.Controls.Button btnClose; @@ -126,33 +150,42 @@ namespace leak_test_project.Views { switch (connectionId) { case 1: - this.cbZmdiBaudRate = ((System.Windows.Controls.ComboBox)(target)); + this.cbIdSensorType = ((System.Windows.Controls.ComboBox)(target)); return; case 2: - this.cbLeftPort = ((System.Windows.Controls.ComboBox)(target)); + this.cbZmdiBaudRate = ((System.Windows.Controls.ComboBox)(target)); return; case 3: - this.cbRightPort = ((System.Windows.Controls.ComboBox)(target)); + this.cbLeftPort = ((System.Windows.Controls.ComboBox)(target)); return; case 4: - this.cbSensorBaudRate = ((System.Windows.Controls.ComboBox)(target)); + this.cbRightPort = ((System.Windows.Controls.ComboBox)(target)); return; case 5: - this.cbSensorPort = ((System.Windows.Controls.ComboBox)(target)); + this.cbSensorBaudRate = ((System.Windows.Controls.ComboBox)(target)); return; case 6: + this.cbSensorPort = ((System.Windows.Controls.ComboBox)(target)); + return; + case 7: + this.cbBoard4253BaudRate = ((System.Windows.Controls.ComboBox)(target)); + return; + case 8: + this.cbBoard4253Port = ((System.Windows.Controls.ComboBox)(target)); + return; + case 9: this.btnSave = ((System.Windows.Controls.Button)(target)); - #line 141 "..\..\..\Views\CommunicationWindow.xaml" + #line 183 "..\..\..\Views\CommunicationWindow.xaml" this.btnSave.Click += new System.Windows.RoutedEventHandler(this.BtnSave_Click); #line default #line hidden return; - case 7: + case 10: this.btnClose = ((System.Windows.Controls.Button)(target)); - #line 142 "..\..\..\Views\CommunicationWindow.xaml" + #line 184 "..\..\..\Views\CommunicationWindow.xaml" this.btnClose.Click += new System.Windows.RoutedEventHandler(this.BtnClose_Click); #line default diff --git a/leak_test_project/obj/Release/Views/CommunicationWindow.g.i.cs b/leak_test_project/obj/Release/Views/CommunicationWindow.g.i.cs index ca7db4a..247505c 100644 --- a/leak_test_project/obj/Release/Views/CommunicationWindow.g.i.cs +++ b/leak_test_project/obj/Release/Views/CommunicationWindow.g.i.cs @@ -1,4 +1,4 @@ -#pragma checksum "..\..\..\Views\CommunicationWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "08EC1AC75E99AD2A58E04E5956799F41C1396BEF9B944AADE201957A2910E01D" +#pragma checksum "..\..\..\Views\CommunicationWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "AF544BD3712CB303CB302F9AA68E55C5B6921446AD339B379C071FBD012AAE60" //------------------------------------------------------------------------------ // // 이 코드는 도구를 사용하여 생성되었습니다. @@ -40,9 +40,9 @@ namespace leak_test_project.Views { public partial class CommunicationWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector { - #line 76 "..\..\..\Views\CommunicationWindow.xaml" + #line 75 "..\..\..\Views\CommunicationWindow.xaml" [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] - internal System.Windows.Controls.ComboBox cbZmdiBaudRate; + internal System.Windows.Controls.ComboBox cbIdSensorType; #line default #line hidden @@ -50,13 +50,21 @@ namespace leak_test_project.Views { #line 91 "..\..\..\Views\CommunicationWindow.xaml" [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.ComboBox cbZmdiBaudRate; + + #line default + #line hidden + + + #line 106 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] internal System.Windows.Controls.ComboBox cbLeftPort; #line default #line hidden - #line 101 "..\..\..\Views\CommunicationWindow.xaml" + #line 116 "..\..\..\Views\CommunicationWindow.xaml" [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] internal System.Windows.Controls.ComboBox cbRightPort; @@ -64,7 +72,7 @@ namespace leak_test_project.Views { #line hidden - #line 116 "..\..\..\Views\CommunicationWindow.xaml" + #line 131 "..\..\..\Views\CommunicationWindow.xaml" [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] internal System.Windows.Controls.ComboBox cbSensorBaudRate; @@ -72,7 +80,7 @@ namespace leak_test_project.Views { #line hidden - #line 131 "..\..\..\Views\CommunicationWindow.xaml" + #line 146 "..\..\..\Views\CommunicationWindow.xaml" [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] internal System.Windows.Controls.ComboBox cbSensorPort; @@ -80,7 +88,23 @@ namespace leak_test_project.Views { #line hidden - #line 141 "..\..\..\Views\CommunicationWindow.xaml" + #line 158 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.ComboBox cbBoard4253BaudRate; + + #line default + #line hidden + + + #line 173 "..\..\..\Views\CommunicationWindow.xaml" + [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] + internal System.Windows.Controls.ComboBox cbBoard4253Port; + + #line default + #line hidden + + + #line 183 "..\..\..\Views\CommunicationWindow.xaml" [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] internal System.Windows.Controls.Button btnSave; @@ -88,7 +112,7 @@ namespace leak_test_project.Views { #line hidden - #line 142 "..\..\..\Views\CommunicationWindow.xaml" + #line 184 "..\..\..\Views\CommunicationWindow.xaml" [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")] internal System.Windows.Controls.Button btnClose; @@ -126,33 +150,42 @@ namespace leak_test_project.Views { switch (connectionId) { case 1: - this.cbZmdiBaudRate = ((System.Windows.Controls.ComboBox)(target)); + this.cbIdSensorType = ((System.Windows.Controls.ComboBox)(target)); return; case 2: - this.cbLeftPort = ((System.Windows.Controls.ComboBox)(target)); + this.cbZmdiBaudRate = ((System.Windows.Controls.ComboBox)(target)); return; case 3: - this.cbRightPort = ((System.Windows.Controls.ComboBox)(target)); + this.cbLeftPort = ((System.Windows.Controls.ComboBox)(target)); return; case 4: - this.cbSensorBaudRate = ((System.Windows.Controls.ComboBox)(target)); + this.cbRightPort = ((System.Windows.Controls.ComboBox)(target)); return; case 5: - this.cbSensorPort = ((System.Windows.Controls.ComboBox)(target)); + this.cbSensorBaudRate = ((System.Windows.Controls.ComboBox)(target)); return; case 6: + this.cbSensorPort = ((System.Windows.Controls.ComboBox)(target)); + return; + case 7: + this.cbBoard4253BaudRate = ((System.Windows.Controls.ComboBox)(target)); + return; + case 8: + this.cbBoard4253Port = ((System.Windows.Controls.ComboBox)(target)); + return; + case 9: this.btnSave = ((System.Windows.Controls.Button)(target)); - #line 141 "..\..\..\Views\CommunicationWindow.xaml" + #line 183 "..\..\..\Views\CommunicationWindow.xaml" this.btnSave.Click += new System.Windows.RoutedEventHandler(this.BtnSave_Click); #line default #line hidden return; - case 7: + case 10: this.btnClose = ((System.Windows.Controls.Button)(target)); - #line 142 "..\..\..\Views\CommunicationWindow.xaml" + #line 184 "..\..\..\Views\CommunicationWindow.xaml" this.btnClose.Click += new System.Windows.RoutedEventHandler(this.BtnClose_Click); #line default diff --git a/leak_test_project/obj/Release/Views/HomeView.baml b/leak_test_project/obj/Release/Views/HomeView.baml deleted file mode 100644 index 7dc97a9..0000000 Binary files a/leak_test_project/obj/Release/Views/HomeView.baml and /dev/null differ diff --git a/leak_test_project/obj/Release/leak_test_project.application b/leak_test_project/obj/Release/leak_test_project.application index 894108c..9ca71bd 100644 --- a/leak_test_project/obj/Release/leak_test_project.application +++ b/leak_test_project/obj/Release/leak_test_project.application @@ -1,6 +1,6 @@  - + @@ -8,13 +8,13 @@ - + - +tT5TcFav5TEeRJogPVqrD2i+n0zc3NErhzPuBsdAok= + IH+aKiFvhI6LMjGB1EhRjwzDSWKszz5bvalWw8FvXd8= diff --git a/leak_test_project/obj/Release/leak_test_project.csproj.CoreCompileInputs.cache b/leak_test_project/obj/Release/leak_test_project.csproj.CoreCompileInputs.cache index 2092494..988987d 100644 --- a/leak_test_project/obj/Release/leak_test_project.csproj.CoreCompileInputs.cache +++ b/leak_test_project/obj/Release/leak_test_project.csproj.CoreCompileInputs.cache @@ -1 +1 @@ -a5a11dfda96fc54bbf20a12944110ec526a98d9d00b6c72f7cfaa59de6d0269f +8e801ce7493642182a43583fe17b32e5aa821b386f992c7c1afbbc168b90d394 diff --git a/leak_test_project/obj/Release/leak_test_project.exe b/leak_test_project/obj/Release/leak_test_project.exe index 597deaa..425743f 100644 Binary files a/leak_test_project/obj/Release/leak_test_project.exe and b/leak_test_project/obj/Release/leak_test_project.exe differ diff --git a/leak_test_project/obj/Release/leak_test_project.exe.manifest b/leak_test_project/obj/Release/leak_test_project.exe.manifest index e9d93f4..7aaf515 100644 --- a/leak_test_project/obj/Release/leak_test_project.exe.manifest +++ b/leak_test_project/obj/Release/leak_test_project.exe.manifest @@ -1,6 +1,6 @@  - + @@ -42,14 +42,14 @@ - + - qAkKP87U3yb9EpU29R51sPc1OgjB2lM+2tz7F86u2qI= + s7N9iBWk8fUXDSMpsQYD+HuhDnCsSIbyR3ysKPAKQVk= diff --git a/leak_test_project/obj/Release/leak_test_project.g.resources b/leak_test_project/obj/Release/leak_test_project.g.resources index 2eeaff0..096e1c1 100644 Binary files a/leak_test_project/obj/Release/leak_test_project.g.resources and b/leak_test_project/obj/Release/leak_test_project.g.resources differ diff --git a/leak_test_project/obj/Release/leak_test_project.pdb b/leak_test_project/obj/Release/leak_test_project.pdb index 32a13e7..f212031 100644 Binary files a/leak_test_project/obj/Release/leak_test_project.pdb and b/leak_test_project/obj/Release/leak_test_project.pdb differ diff --git a/leak_test_project/obj/Release/leak_test_project_MarkupCompile.cache b/leak_test_project/obj/Release/leak_test_project_MarkupCompile.cache index 49f868a..7629669 100644 --- a/leak_test_project/obj/Release/leak_test_project_MarkupCompile.cache +++ b/leak_test_project/obj/Release/leak_test_project_MarkupCompile.cache @@ -12,9 +12,9 @@ TRACE C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\App.xaml 6627611856 1-698605034 -40-1688273308 +452020398631 14-767506772 Views\HomeView.xaml;Views\InOutView.xaml;Views\DataView.xaml;Views\ParametersWindow.xaml;Views\CommunicationWindow.xaml;MainWindow.xaml; -False +True diff --git a/leak_test_project/obj/Release/leak_test_project_MarkupCompile.i.cache b/leak_test_project/obj/Release/leak_test_project_MarkupCompile.i.cache index a119c98..7629669 100644 --- a/leak_test_project/obj/Release/leak_test_project_MarkupCompile.i.cache +++ b/leak_test_project/obj/Release/leak_test_project_MarkupCompile.i.cache @@ -12,7 +12,7 @@ TRACE C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\App.xaml 6627611856 1-698605034 -41-132538320 +452020398631 14-767506772 Views\HomeView.xaml;Views\InOutView.xaml;Views\DataView.xaml;Views\ParametersWindow.xaml;Views\CommunicationWindow.xaml;MainWindow.xaml; diff --git a/leak_test_project/obj/Release/leak_test_project_MarkupCompile.i.lref b/leak_test_project/obj/Release/leak_test_project_MarkupCompile.i.lref index f10eabd..ac3a45a 100644 --- a/leak_test_project/obj/Release/leak_test_project_MarkupCompile.i.lref +++ b/leak_test_project/obj/Release/leak_test_project_MarkupCompile.i.lref @@ -1,5 +1,4 @@ -C:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\obj\Release\GeneratedInternalTypeHelper.g.i.cs -FC:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\App.xaml;; -FC:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\Views\HomeView.xaml;; + + FC:\Users\COMPUTER1\Desktop\mobi\leak_test_project\leak_test_project\MainWindow.xaml;;