728x90

API 5

Gradle의 라이브러리 의존성 옵션 정리

익숙함 문득 웹 프로젝트 관련 내용들을 정리해나가면서, gradle 파일을 보니까 다음과 같은 부분이 눈에 들어왔다. dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-web' compileOnly 'org.projectlombok:lombok' runtimeOnly 'com.h2database:h2' annotationProcessor 'org.projectlombok:lombok' } 언제부턴가 기존 프로젝트를 따라가는 방식으로 라이브러리 의존성을 작성하다 보니까, 이것들에 대한 이해하고 있..

WPF, 윈폼] 마우스 커서 위치에 있는 픽셀의 색상값(RGB) 구하는 방법

필요에 의해서 특정 지점에서의 RGB값으로 구성된 색상값을 구하고 싶어서 간단한 유틸리티를 만드는데, 특정 지점에서의 색상값을 구하는 방법을 찾아봤다. MSDN이랑 스택오버플로우를 뒤져보니까 GetPixel이라는 해당 픽셀에서의 색상값을 구하는 윈도우 API가 있다. [DllImport("user32.dll", SetLastError = true)] public static extern IntPtr GetDesktopWindow(); [DllImport("user32.dll", SetLastError = true)] public static extern IntPtr GetWindowDC(IntPtr window); [DllImport("gdi32.dll", SetLastError = true)] publ..

API] 다음 우편번호 API 사용하기

필자가 대학을 다니는 동안 데이터베이스 과목을 수강을 했고,그 과목에서는 PHP와 MySQL을 이용해서 자신만의 쇼핑몰을 만드는 것을 목적으로 했다.사용자 모드와 관리자 모드가 존재하는,서버에 올리면 즉시 활용 가능한 수준의 쇼핑몰이 기말 프로젝트로 평가 받았다. 당시 필자가 들었던 수업에서는,우편번호 DB를 직접 서버에 저장해놓고 끌어다 쓰는 방식으로 우편번호 검색 기능을 넣도록 배웠다.요즘 조금만 찾으면 무료 API를 활용할 수 있다는 걸 지난날의 경험을 통해 깨달은 필자한테,MySQL 작업도 이제 좀 다뤄보는 학생들한테 넣기도 불편하고, 넣는 과정도 복잡하고,심지어는 구식의 데이터를(사용하라는 우편번호 DB는 6자리, 현행 우편번호는 5자리) 활용한다는 것이그리 좋은 소리로 들리지 않았다. 찾아보니..

API] SetWindowsHookExA 함수

SetWindowsHookExA function 123456HHOOK WINAPI SetWindowsHookEx( _In_ int idHook, _In_ HOOKPROC lpfn, _In_ HINSTANCE hMod, _In_ DWORD dwThreadId);cs user32.dll에 있는 해당 함수를 통해 훅을 설정할 수 있음.대표적인 함수로, MSDN에서 해당 함수의 구조와 사용법에 대해서 알 수 있음. 첫번째 인자, 훅 타입으로 어떤 종류의 메세지를 후킹할 것인지 선택하는 것두번째 인자, Hook Procedure세번째 인자, 후킹할 스레드가 속해 있는 DLL의 핸들네번째 인자, 후킹할 스레드 아이디 첫번째 인자에 들어갈 훅 타입은 구글링으로 체크 가능두번째 인자로 사용할 훅 프로시저, 파이썬의 경..

C#] 폼 포커싱(Form Focusing)

C#을 활용해 프로그램을 만들다가문득 윈도우를 최상위에 오게 만들 일이 생겼다.소위 말해서 띄운 창에 포커싱을 해줘야 하는데,속성값 몇 개 바꾼다고 해결될 줄 알았던 게 감감 무소식Win API를 활용하는 방법이 있고'TopMost'을 변경해주는 간단한 방법이 있다. Win API 방식 활용 'using System.Runtime.InteropServices;' 빠뜨리지 말 것 123456// 윈도우가 비활성화 상태면 활성화 시켜야 포커싱[DllImport("user32.dll")]private static extern bool ShowWindowAsync(IntPtr hWnd, int nCmdShow);// 포커싱할 윈도우를 최상위에 오게 만듦[DllImport("user32.dll")]private ..

728x90