본문 바로가기
반응형

IT126

Visual Studio 2012 Update 4 이상에서 XP 용 C++ 11 프로그램 구성 참고 : https://msdn.microsoft.com/ko-kr/library/jj851139.aspx Visual Studio 에 포함되어 있는 Windows XP 플랫폼 도구 집합은 Windows 7 에 포함된 Visual Studio 2010 SDK 의 한 버전이지만 최신 C++ Compiler 를 사용한다. Windows XP 플랫폼 도구를 사용하여 데스크톱앱을 만들면 XP, Windows Server 2003 에서 실행된다. Windows XP 를 대상으로 지정하려면 솔루션 탐색기 프로젝트 > 속성 > 구성 속성 > 일반 > 플랫폼 도구 집합 에서 "Windows XP" 가 포함된 것으로 선택하면 된다 v110_xp 플랫폼 도구 집합을 사용하는 앱은 Visual Studio 에서 구현되는 C.. 2016. 10. 12.
[MFC] 프로세스를 이미지 이름으로 검색하여 종료를 기다리기 #include PROCESSENTRY32 entry; entry.dwSize = sizeof(PROCESSENTRY32); HANDLE hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, NULL); DWORD dwCode = 0; if ( TRUE == Process32First(hSnapshot, &entry)) { while (TRUE == Process32Next(hSnapshot, &entry)) { if (0 == _tcscmp(entry.szExeFile, _T("myfile.exe"))) { HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, entry.th32ProcessID); dwCo.. 2016. 10. 7.
PHP Trait Trait 는 PHP 5.4 부터 추가된 기능이다Trait는 어떤 특정 기능의 코드를 재사용 가능하게 해 준다.Trait 로 상속없이 특정 기능을 추가할 수 있게 된다. Trait 는 클래스에 추가할 Method 들의 집합이다 trait teach_something { public function say($words) { echo $words; }}class Teacher { use teach_something;}class Manager { use teach_something;}$teacher = new Teacher;$teacher->say("study"); 2016. 10. 7.
PHP list 문 list ($family_name, $middle_name, $last_name) = ["Lee", "Middle", "James"]; $MyFamily = [["Lee", "Milddle", "James"],["Kim", "2nd", "Mary"],]; foreach ($MyFamily as list($family_name, $middle_name, $last_name)){echo $family_name.$middle_name.$last_name;} 2016. 10. 3.
프로그래머로의 새로운 출발 내 경력을 간단히 말하면.. 중학교 때 GW-Basic 을 배운 것이 프로그래머로서의 첫 출발이었다. 그 때 당시 유행하던 PC 는 286 이었는데.. 아마 내 나이를 유추할 수 있을 듯도 싶다. (굳이 알고 싶은 사람은 없겠지만..) GW-Basic 을 배울 당시만 해도 매우 재미있었고 쉬웠던 것 같다. 컴퓨터라는 것도 마냥 동경의 대상이기만 했다. 대학을 문과로 들어갔다가 군대 제대하고 나서야 다시 프로그래머로서의 꿈을 꾸기 시작했다. 그 때 당시 웹디자인 학원이 유행을 탈 때이고 Flash 등이 주목을 받는 그런 시대였다. 다시 한번 내 나이를 유추할 수 있을 지 모르겠다 (궁금한 사람은 없을수도..) 군 제대 후 시작한 공대 복수전공. 그리고 기초과목인 C 언어 수강 후 배우기 시작했는데.. 다들.. 2016. 9. 29.
VLAN 가상랜 Virtual Lan 의 약자이다 Virtual Local Area Network (가상근거리통신망) 이라고도 한다 이를 이용하면 스위치로 브로드캐스팅 영역을 만들 수 있다. 하나의 Bus를 논리적으로 여러개로 구분하여 쓸 수 있는 것이다. 마치 여러개의 LAN을 가지게 되는 것과 같다. Port, MAC, Protocol 등으로 가상랜을 구성할 수 있다. 또한 같은 네트워크 스위치에 있지 않더라도 그룹으로 묶을 수 있다 2016. 9. 28.
제어판 Item 실행 제어판 아이템에는 API call 이나 command-line 에서 프로그램적으로 사용할 수 있는 canonical name 이라는 것이 있다 (https://msdn.microsoft.com/en-us/library/windows/desktop/ee330741(v=vs.85).aspx) * control.exe /name Microsoft.WindowsUpdate 윈도우즈 업데이트 창을 띄우는 명령어 인데 여기서 Microsoft.WindowsUpdate 가 윈도우즈 업데이트 제어판에 대한 canonical name 이다 아이템의 특정 페이지를 열려면 page 옵션을 사용한다"%systemroot%\system32\control.exe /name canonicalName /page pageName" C.. 2016. 9. 27.
Language construct echo, print, include, isset, require 등의 함수는 Language construct 이다그렇다면 Language construct 라는 것은 무엇인가? 네이버에서 검색에 나온 전자용어사전의 정의는 다음과 같다언어구성요소 : 프로그램 언어를 기술하기 위해 필요한 구문상의 구성 요소. 예를 들면 식별자, 명령문, 모듈 등 Wikipedia 의 정의는 다음과 같다A language construct is a syntactically allowable part of a program that may be formed from one or more lexical tokens in accordance with the rules of a programming language.The ter.. 2016. 9. 25.
MFC 에서 dll에 CStringArray를 인자 전달시 Heap Violations 에러 발생 MFC Application 에서 dll 의 함수에 CStringArray& 를 이용하여 변수를 참조로 전달하고, 결과값을 CStringArray 로 받아오는 코딩을 하였다. 즉 dll 에서 CStringArray 에 입력할 값을 할당한 경우였다. 그런데 지역함수를 빠져나갈 때 Heap Violation 이 발생하여 검색을 하니 관련 정보를 찾을 수 있었다. ( http://stackoverflow.com/questions/7309277/heap-violations-when-releasing-a-cstringarray-parameter-from-a-dll-exported-fun) 이것을 해결하려면 즉 CStringArray 같은 MFC Object 를 exe/dll 간에 사용하려면 MFC Extensio.. 2016. 9. 23.
WMI 를 이용하여 백신 프로그램 정보 얻어오기 Windows Security Center 에는 IWSCProduct Interface가 존재하기 때문에 Product Name, ProductState, ProductTimeStamp, RemediationPath, SignatureStatus 정보를 얻어올 수 있다. (관련자료 https://msdn.microsoft.com/en-us/library/jj55479(v=vs.85).aspx) 하지만 위 방법은 Win7 32bit 에서는 동작하지만 Win7 64bit 에서는 잘 동작하지 않았다. (아직 파악중입니다 ㅠ) 그래서 찾아낸 것이 WMI를 이용한 방법이다. 일단 WMI Query 를 사용할 수 있다는 전제하에 설명하겠다 NameSpace - "root\\SecurityCenter2" Query .. 2016. 9. 21.
반응형