와.... 진짜 이거 할려고 얼마나 뻘짓을 많이 했던가 -.-;; 국내에 있는 수 많은 게시글을 다 뒤지고 다녀도 찾을 수가 없어서 직접 알아냈다. 우선 링크는 http://msdn.microsoft.com/en-us/library/aa384006(v=VS.85).aspx 여기.. 문제가 뭐냐면 비스타에서 사용자 계정 컨트롤러(UAC라고 해서 User Account Control..)를 사용하여 보안모드 상태일 경우 프로그램 실행하는것 조차 까다롭게 된다. 프로그램 배포시에 사용자에게 'UAC를 풀고 사용해라!'라고 하면 참 좋겠지만 그게 어디 쉽나.. 여튼.. UAC가 활성화 된 상태에서 내가 만든 프로그램을 섣불리 Start Up(시작 프로그램)에 등록할려고 하면 Windows Defender가 우리..
1. cat파일을 추가하여 인스톨러 제작하기.. 애초 DTS_U, DTS_PS2, DTS_MOU 로 이루어져있는 우리의 드라이버가 드라이버 설치만으로 작동할 것이라고 생각한게 큰 오산이었다.. 당연히 새 하드웨어 추가를 통해 아무리 inf를 넣어봤자 돌아갈리가 없었다. '마우스 서비스'를 실행해서 터치 드라이버 부분의 USB와 에뮬레이션 해줘야 했으니까.. 마우스 서비스는 DTS_MOU.sys에서 담당했으며 이 부분은 어플리케이션에서 레지스트리 등록을 통해서 따로 구현해 줘야 하는 부분이었다. 그러니 아무리 인스톨 쉴드 위자드로 파일을 옮겨봤자 제대로 될리가 없지.. 기존 인스톨러에 있는 레지스트리 부분이 너무 많아서 기존 인스톨 소스에 서명된 cat파일을 추가하는 것으로 마무리 지었다. 2. INF의 ..
수 많은 삽질 끝에 드디어 드라이버 파일에 코드 사이닝을 해냈다.. 우와.. XP와는 다르다.. 나는 *.sys 파일에 코드 사이닝 하면 되는줄 알았다. 아니였다.. Vista에서는 *.cat 파일 (catalog 파일)을 생성하여 inf와 sys를 다 등록 한 후 cat 파일에 Authenticode(Code Signing)해주어야 한다. 문서를 읽어보면 Server 2003 이후에는 코드 사이닝 개념이 생겨서 신뢰 기관으로 등록 하는 경우 Warning Dialog가 뜨지 않는 다고.. (XP의 경우에는 WHQL해줬어야 했다) 요하튼.. 비스타에서 드라이버 배포의 A to Z를 봅시다. 필요한 것. 1. WDK 2. SignTool 3. Inf2Cat 뭐.. 결국 SignTool와 Inf2Cat은 안..
1) 언인스톨 후 재부팅 하지 않도록 하는 방법 OnMaintUIAfter부분에 보면 SdFinishreboot 스크립트가 있다. 척보면 척이니.. 이 부분 지워주면 된다. 2) 인스톨 후 재부팅 하는 방법 After Move Data의 OnFirstUIAfter 부분을 보면 하단에 if ( BATCH_INSTALL ) then SdFinishReboot ( szTitle , szMsg1 , SYS_BOOTMACHINE , szMsg2 , 0 ); else SdFinish ( szTitle , szMsg1 , szMsg2 , szOpt1 , szOpt2 , bvOpt1 , bvOpt2 ); endif; 이런 부분이 있다. 이부분에서 SdFinishReboot부분을 제외한 나머지 부분을 모두 주석 처리하여..
x64로 넘어 오면서 정말 많이 햇깔리는 것이 SysWOW64 폴더의 존재다. 아주 단순하게 이건 64bit 프로그램들 있는 곳인가? 생각하면 큰일! SysWOW64는 32bit 파일들이 담긴 곳이다.. 예상과는 다르게 system32 폴더에 바로 64bit 파일들이 담겨있단 말씀.. 이름과 반대로 생각하면 되겠다. 그리하여.. 32bit 프로그램에서 system32 폴더에 접근하려 하면 당연히 SysWOW64 폴더로 리다이렉션 되고 만다. 이 문제를 해결 하기 위해 Install Shield에서는 간단히 코드 한줄만 넣어주면 된다. OnSetTARGETDIR 부분에 Disable(WOW64FSREDIRECTION); 을 추가해주면 되겠다.
윈도우 비스타는 기본적으로 드라이버에 서명이 돼있지 않으면 로딩하지 않는다. Vista이전에서는 Signcode.exe로 코드 사이닝이 됐지만 Vista부터는 Signtool을 사용해야 한다. SignTool을 사용하기 위해 우선 갖고 있는 인증서 파일(pvk, spc파일)을 pfx로 변환해 주어야 한다. 이는 pvk2pfx를 사용한다. cmd에서 pvk2pfx -pvk 인증서이름.pvk -pi 비밀번호 -spc 인증서이름.spc -pfx 인증서이름.pfx -po 비밀번호 -f 해주면 인증서이름.pfx 파일이 생성된다. 이를 더블클릭해서 my (개인)에 등록한다. 이후 VeriSign의 경우 아래 파일과 Signtool을 이용하여 계속해서 싸인해주면 되겠다. 내가 한 것이 VeriSign밖에 없기 때문에..
DTM guide (manual) http://www.microsoft.com/whdc/DevTools/WDK/DTM/DTMhowto.mspx WHQL 인증 시 필요한 DTM 프로그램 가이드. ms홈페이지에 있지만 링크 찾아가기가 여간 번거로운게 아니라서 이곳에 메모! Windows Logo Program Requirments http://www.microsoft.com/whdc/winlogo/downloads.mspx LOGO 획득에 필요한 정책이 담겨있는 문서.. 2003과 XP에 대해서만 있다.. (문서가 2005년 문서더라) 문서 안에 있는거 따라가다 보면 최신 링크도 발견이 되니 참조할것.. Logo FAQ http://www.microsoft.com/whdc/winlogo/logofaq.mspx
- Total
- Today
- Yesterday
- 리눅스
- 음악
- Quiz
- db
- linux
- NDK
- kering
- Cloud
- AWS
- database
- 프로그래밍
- C
- Python
- it
- algorithm
- java
- C++
- Troubleshooting
- jni강좌
- 안드로이드
- android
- 드라이버
- driver
- source
- winapi
- gcc
- Visual C++
- API
- MFC
- jni
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |