본문 바로가기

Study/API16

MSPatcha.dll MSPatchc.dll #MSPatch 업데이트 활용 대용량의 파일들을 서버에서 관리해야 하는 일들이 있다. 근데 그 파일들의 사이즈는 GB는 아니지만 갯수가 MB단위로 하루에 GB이상씩 전달해야 하는 상황이다. 즉 서버에서는 하루에 엄청나게 많은 파일들과 엄청난 하드디스크 용량을 차지하는 case가 발생하게 되었다. 수집되는 데이터는 어느 정도 동일성을 갖는 데이터 이다. 이것에 대한 처리는 어떻게 하면 될가? 회의도 해보고 내머리로 짱구도 굴려봤지만..딱히 시원한 답은 없는 상황~..-_-; 하지만 선배가 어쩌면 해결이 될지 모르는 기가막힌 해결책을 제시했다. +.+ MSPatch 를 이용해보자. 난 그게 뭥가용?? 먹는건가용? 내가 글을 읽어보니 큰 그림은 대략 이렇다. 패치시에 변경된 파일을 통으로 바꾸는게 아니라. 두 파일간 diff하여 변경되면 .. 2017. 1. 3.
현재 윈도우 Screen 크기 알아오기 GetSystemMetics() 함수를 사용하여 현재 화면 크기를 얻어올 수 있다. 여기서 하단 태스크바를 제외를 영역을 가져오기위해 위 함수의 인자로 SM_CYFULLSCREEN을 인자로 주어 처리할 수있 다는 내용을 보고 해당 인자를 넣어 처리하도록 하였는데 막상 실행하고 나고 보니 사이즈가 딱 맞아 떨어지지 않았다. 좀더 검색해보니 SystemParametersInfo 함수를 사용하라고 되어 있었다. 해당 함수를 사용하여 출력하니 딱맞게 떨어졌다. 사용한 코드이다. RECT rcArea;SystemParametersInfo(SPI_GETWORKAREA, 0, &rcArea, 0);화면 가로 : rcArea.right - rcArea.left화면 세로(태스크바 제외): rcArea.bottom - r.. 2016. 9. 6.
세션 ID, 활성화된 세션, 현재 구동중인 세션(session) id 구해오기 현재 활성화된 세션 ID를 구해오는 방법DWORD dwAtiveSessionID = WTSGetActiveConsoleSessionId();WTSGetActiveConsoleSessionId() 함수를 쓰면 손쉽게 현재 활성화된 세션 ID를 구해올 수 있다. 단 서버같은 환경에서 돌리면 원격으로 붙어서 저 함수를 쓰면 원래 remote쪽에 활성화된 세션은 안나오고로컬쪽의 세션id값이 나온다.그럴때는 현재 구동중인 프로세스로 부터 세션 id를 알 수 있다.즉 현재 구동중인 놈이 어떤 세션에서 돌고있는 지를 구하면 된다.DWORD dwWorkSession = 0;DWORD processID = GetCurrentProcessId();ProcessIdToSessionId(processID dwWorkSessi.. 2013. 11. 7.
윈도우 버젼 표 OS의 버젼을 알아올때 major와 minor가 가리키는 값이 어떤 OS인지 확인할때~~ Operating systemVersion numberdwMajorVersiondwMinorVersionOtherWindows 86.262OSVERSIONINFOEX.wProductType == VER_NT_WORKSTATIONWindows Server 20126.262OSVERSIONINFOEX.wProductType != VER_NT_WORKSTATIONWindows 76.161OSVERSIONINFOEX.wProductType == VER_NT_WORKSTATIONWindows Server 2008 R26.161OSVERSIONINFOEX.wProductType != VER_NT_WORKSTATIONWindow.. 2012. 12. 26.