전체 글
-
[Windows] - 이벤트 뷰어 시작 프로그램 실행 추적Operating System/Windows 2026. 1. 6. 18:21
내가 C# 으로 개발한 CS 프로그램을 NSIS 를 통하여 윈도우 시작시에 실행 할 수 있게 아래와 같이 시작프로그램에 등록하였다 WriteRegStr HKCU "Software\Microsoft\Windows\CurrentVersion\Run" "AppName" '"$INSTDIR\AppName.exe" -bystartup' 고객 PC 에서 카카오톡은 실행은 되었지만 내가 개발한 프로그램은 실행이 되지 않는 상태였다. 위와 같은 상황일때 이벤트뷰어를 통하여 추적할 수 있는데해당 이벤트 뷰어를 통하여 추적하기전에 아래와 같이 설정해야만 한다. 1.실행 gpedit.msc 2.로컬 그룹 정책 편집기 컴퓨터 구성/Windows 설정/보안 설정/고급 감사 정책 구성/시스템 감사정책 - 로컬 그룹 정책 개체/ ..
-
[ILDASM] - 사용 방법.NET/Tools, Library 2025. 6. 30. 11:09
최근에 회사에서 C# 으로 개발한 프로그램에서 OOM 관련 이슈가 있어 Windbg, JetBrains dotMemory로 덤프파일을 분석 하던중 아래와 같은 원인 모를 타입에 대해서 누수가 생겼다. 원인 모를 타입은내가 만든 클래스명+c_DisplayClass3_0 로 시작되는 클래스였다. 검색결과 해당 클래스는 람다를 통한 Invoke(() => Func()); 코드가 컴파일 이후에.NET Framewormk 내부적으로 정적클래스로 생성되는 타입이였다. 해당 타입의 코드를 명확하게 알기 위해서는 ILDASM 툴로 확인 할 수 있었다.DLL 을 열어 OOM 누수가 발생하는 클래스를 펼쳐보니 클래스 내부에 -c__DisplayClass3_0 로 시작하는 정적클래스를 찾을 수 있었다.
-
[C#] - Process.MainWindowHandle 속성.NET/CSharp 2022. 5. 25. 15:48
Process.MainWindowHandle 속성으로 보면 Application.Run() 메서드에 들어가는 Form 클래스의 Handle 로 오해하기 쉽다. 그러나 해당 속성은 전혀 그렇지 않고 프로그램상의 포커스되는 최상위 윈도우의 Handle 로 지정이 된다. https://docs.microsoft.com/ko-kr/dotnet/api/system.diagnostics.process.mainwindowhandle?view=net-6.0 Process.MainWindowHandle 속성 (System.Diagnostics) 연결된 프로세스의 주 창에 대한 창 핸들을 가져옵니다. docs.microsoft.com KakaoTalk 에서 핸들정보가 아래와 같다면 - KakaoTalk = 1705822 ..
-
[C#] - WinForm Edge WebView2 사용방법 및 팁.NET/CSharp 2022. 3. 24. 15:14
최근에 Windows 10 업데이트가 되면서 아래와 같이 WebView2 런타임이 설치된 걸 볼 수 있습니다. 필자는 최근에 회사 PC 윈도우를 다시 설치하여 2022-03-20 날짜로 나오지만 해당 날짜보다 이전에 설치된 걸로 파악이 됩니다. Windows 10 Enterprise 기준입니다. Microsoft Edge supported Operating Systems https://docs.microsoft.com/en-us/deployedge/microsoft-edge-supported-operating-systems 윈도우를 최신으로 업데이트하여도 Microsoft Edge WebView2 런타임이 설치가 되어 있지 않을 경우 아래의 경로에서 설치 파일을 다운로드하여 설치합니다. 필자의 Windo..
-
[C#] - WinForm WebBrowser 사용방법 및 팁.NET/CSharp 2021. 12. 17. 20:15
C# WinForm WebBrowser 사용방법 및 팁 현재 회사에서 WebBrowser 컨트롤을 활용한 프로그램을 개발중에 있습니다. 개발하면서 겪었던 점을 정리합니다. 1.WebBrowser 레지스트리 Internet Feature Control Keys https://msdn.microsoft.com/en-us/library/ee330720(v=vs.85).aspx 위에 링크는 WebBrowser를 활용하기 위해 필요한 기능(레지스트리 정보)에 대해서 설명하고 있습니다. InternetFeatureControlKeys 클래스는 해당 레지스트리 정보들을 추가 할 수 있는 기능을 제공합니다. InternetFeatureControlKeys.cs using Microsoft.Win32; using Sys..
-
-
[Dev Note] - XPlatform ActiveX WebBrowser 컨트롤 IE11 설정Dev Note 2021. 3. 25. 09:21
TOBESOFT XPlatform WebBrowser 컨트롤을 통하여 현재 C#으로 개발중인 WebSocket 서버 모듈과 통신이 잘 되는지 테스트가 필요하였다. 자세하게는 모르지만 기본적으로 IE7로 동작한다는것을 얼핏 들은거 같다. TOBESOFT에 제공하는 모듈을 통하여 설정이 가능하겠지만 해당 모듈을 통하여 테스트가 불가능한경우 직접적으로 레지스트리에 값을 추가하여 테스트를 진행 할 수 있다. 설정 하는 레지 경로는 LocalMachine x86 SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION x64 SOFTWARE\Microsoft\Internet Explorer\Main\F..