전체 글
-
[C#] - Settings.Default.Save() 시 user.config 저장 위치.NET/CSharp 2020. 11. 2. 15:22
프로젝트.Properties.Settings.Default.Save() 시 user.config 저장 위치 프로젝트 속성/설정 에서 정의한 데이터는 저장시에 아래의 코드를 통하여 저장 할 수 있다. Settings.Default.Save() 저장 후에 다시 실행 시에 어떻게 기존에 저장되었던 데이터를 로드하는지 궁금하였고. 특정 경로에 파일을 쓸거 같다는 생각이 들어 구글링을 통해 해당 경로를 찾았다. On Windows Vista and later, the locations have changed to C:\Users\\AppData\Roaming\ and C:\Users\\AppData\Local\ Windows Vista 이상에서는 경로가 위와 같다. 필자의 경우에는 AppData/Local 위치에..
-
[C#] - .NET Framework 3.5 TLS 1.2 적용하기.NET/CSharp 2020. 6. 15. 10:14
.NET Framework 3.5 TLS 1.2 적용하기 Chrome 브라우저에서 기존에 잘 되던 HTTPS API 서버에서 오류가 발생 하였다. HTTPS API 서버는 System.Net.Security.SslStream 클래스를 활용하여 개발하였다. 에러는 ERR_SSL_OBSOLETE_VERSION 이였고 해당 에러는 아래의 링크를 통하여 해결을 하였다. https://blog.chromium.org/2019/10/chrome-ui-for-deprecating-legacy-tls.html Chrome UI for Deprecating Legacy TLS Versions Update (April 6, 2020): The removal of legacy TLS versions was originall..
-
[Dev Note] - Firefox security.enterprise_roots.enabled;true 설정Dev Note 2019. 11. 19. 16:31
Firefox 브라우저는 신뢰되는 인증기관에서 발급한 인증서만 인증이 되는 것 같다. 필자가 OpenSSL을 통하여 만든 루트 인증서는 HTTPS, WSS 통신이 실패 하였습니다. 만든 인증서를 인증이 되게 하기 위해서 Firefox 주소창에서 about:config 설정에 들어가 security.enterprise_roots.enabled 값을 true로 설정 후에는 HTTPS, WSS 통신이 잘 되었습니다. 프로그램을 배포시에는 해당 값을 security.enterprise_roots.enabled;true 설정이 필요한데 해당값은 C:\Users\사용자이름\AppData\Roaming\Mozilla\Firefox\Profiles 디렉토리에서 ?.default 로 시작하는 디렉토리 안에 user.js..
-
[C#] - WinForm 특정 윈도우 Show, TopMost 처리.NET/CSharp 2019. 10. 7. 18:02
웹 브라우저에서 웹 소켓을 통하여 특정 프로그램을 실행하는 프로그램을 개발 중에 있다. 해당 프로그램은 프로그램을 실행 후에는 실행된 프로세스와 소켓 통신(TCP/IP)을 통하여 데이터를 주고받고 프로세스에서 데이터를 받으면 웹 소켓을 통하여 데이터를 웹 브라우저 쪽으로 내려주는 구조로 되어있다. 또 프로세스가 하나 이상 실행이 되지 않는 구조로 되어 있다. 그러다 보니 실행되어 있는 상태에서 다시 실행 요청을 하였을 때 해당 프로세스의 메인 윈도우가 축소되어 있거나 다른 윈도우에 가려져 있을 때 처리가 필요하였다. 다행히 User32.dll IsIconic 함수를 통하여 프로세스의 메인 핸들을 넘겨 해당 프로세스 메인 핸들의 창이 최소화 여부를 알 수 있었다. 프로세스의 메인 윈도우가 최소화 되어 있을..
-
[C#] - Working Directory.NET/CSharp 2019. 4. 16. 21:43
WorkingDirectory 다른 회사 프로그램에서 내가 개발중인 프로그램을 실행 하게하는 작업을 하고 있었다. 이상하게도 정상 적으로 작동이 되질 않았다. 기존에 개발을 해 두었던 내가 개발한 프로그램으로 실행 하였을 때에는 정상적으로 실행 되었던 상태로 이상하게 느껴졌다. C# 개발을 오래했던 친구에게 물었더니 WorkingDirectory를 설정 을 해보라고 하더라 public static void ProcessStart(string fileName) { Process process = new Process(); process.StartInfo.WorkingDirectory = new FileInfo(fileName).Directory.FullName; process.StartInfo.FileNa..
-
[VMware] - 듀얼 모니터 설정VMware 2019. 4. 8. 17:09
Use Multiple Monitors for One Virtual Machine If the host system has multiple monitors, you can configure a virtual machine to use multiple monitors. You can use the multiple-monitor feature when the virtual machine is in full screen mode. Note You do not need to use the Windows display properties settings in a Windows guest operating system to configure multiple monitors. Prerequisites ■ Verify..
-
[C#] - WinForm PropertyGrid 에 표시되는 Enum 값 이름 변경하기.NET/CSharp 2018. 12. 25. 11:44
PropertyGrid 를 활용하여 프로퍼티 설정하는 다이얼로그 창을 개발하던 중 Enum 에 해당 하는 값을 UI에 그대로 표현 하기에는 적당하지 않아 변경하는 방법을 찾아 보았다. 기본적으로 PropertyGrid 에 속성을 표현하기 위해서는 SelectedObject Property를 사용한다. 자세한 활용법은 MSDN을 참고하시기 바란다. MSDN PropertyGrid https://msdn.microsoft.com/ko-kr/library/aa302326.aspx PropertyGridForm using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Draw..
-
[DebugView] - 사용하기.NET/Tools, Library 2018. 9. 14. 10:04
DebugView 사용하기 https://docs.microsoft.com/en-us/sysinternals/downloads/debugview DebugView - Windows Sysinternals This program intercepts calls made to DbgPrint by device drivers and OutputDebugString made by Win32 programs. docs.microsoft.com DebugView는 .NET Framework로 Application 개발시 유용한 툴입니다. 개발시에 System.Diagnostics Namespace 에 있는 Debug, Trace 클래스를 활용하여 디버깅 용도로 사용됩니다. C, C++ 에서는 Windows.h 에서 ..