당연하지만 헷갈리는 __try 문 호출 순서
__try __finally 내부의
__try __except 는 쉽게 예상가능하듯 다음과 같은 실행 순서를 갖는다.
__try{ __try{ ③ } |
__try 문 내의 또다른 __try 문에서 Exception 이 발생하면,
Exception 핸들러가 먼저 호출될까 __finally 구문이 먼저 호출될까?
헷갈릴 수 있지만, __finally 가 먼저 호출된다.
__try{ __try{ // 실행되지 않는 라인 |
__try 문 안에서 return 을 하면,
return 에 대한 처리 순서는 다음과 같다.
void fnA()
} |
만약, 동기화객체를 사용하는 함수에서,
동기화를 풀기위해 __finally 구문을 사용하고,
내부에서 (동일한 동기화객체를 사용하는) 다른 함수를 호출하며 리턴한다면
Lock 에 의한 문제가 발생할 수 있으므로 주의해야 한다.
WinDBG 조건부 브레이크 포인트
kd> bp b8fb429d ".if @@(pData->dwMyFlag & 0x00010000) {} .else {gc}"
b8fb429d 주소에 브레이크 포인트를 거는데 조건에 따라 걸리게 하고 싶은 상황입니다. .if {} .else {} 명령을 사용한 조건문입니다. @@( ) 을 사용하면 괄호 안에서는 C/C++ 소스코드에서 사용하던 표현들을 쓸 수 있습니다. |
원문 URL : http://www.driveronline.org/bbs/view.asp?tb=tipbbs&no=91
Driver Test Signing 및 테스트 PC 설정 방법
작업은 관리자 권한의 쉘에서 해야합니다.
MakeCert, SignTool 과 같은 Signing Tool 은 Vista 버전 이후의 DDK 에 포함되어있습니다.
개발 PC
1. Test Signing 을 위한 테스트 인증서 생성
> MakeCert -r -pe -ss MyTestCertStore -n "CN=MyCert" MyCertFile.cer |
2. 테스트 인증서 설치
> CertMgr /add MyCertFile.cer /s /r localMachine root |
3. Driver Test Signing
> SignTool sign /v /s MyTestCertStore /n MyCert /t http://timestamp.verisign.com/scripts/timstamp.dll driver.sys |
테스트 PC
1. 개발 PC 에서 생성한 테스트 인증서(MyCertFile.cer) 복사
2. 테스트 인증서 설치
> CertMgr /add MyCertFile.cer /s /r localMachine root |
혹은
> CertMgr /add MyCertFile.cer /s /r localMachine trustedpublisher |
3. 테스트 사이닝된 드라이버가 사용 가능하도록 부팅 메니져 설정
> Bcdedit -set TESTSIGNING ON |
4. 재부팅
참고.
http://msdn.microsoft.com/en-us/library/windows/hardware/ff548693(v=vs.85).aspx
http://msdn.microsoft.com/en-us/library/windows/hardware/ff553467(v=vs.85).aspx
http://msdn.microsoft.com/en-us/library/windows/hardware/ff553563(v=vs.85).aspx
SharepointServer 웹 파트 에서 빠른 실행 보이는법
왼쪽에 나타나는 네비게이션(빠른 실행)이 나타나지 않는다.
Sharepoint Designer 를 이용하여, 페이지를 편집하면 나타나게 할 수 있지만
이 방법은 페이지 마다 해주어야 한다.
C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\1042\STS\DOCTEMP\SMARTPGS
폴더의 *.aspx 파일들을 열어서
<asp:Content ContentPlaceHolderId="PlaceHolderPageImage" runat="server"></asp:Content>
<asp:Content ContentPlaceHolderId="PlaceHolderLeftNavBar" runat="server"></asp:Content>
<asp:Content ContentPlaceHolderId="PlaceHolderNavSpacer" runat="server"></asp:Content>
<asp:Content ContentPlaceHolderId="PlaceHolderMain" runat="server">
붉은 색으로 표시된 열을 삭제하면, 모든 웹 파트 페이지에서 빠른실행을 볼 수 있게 된다.
마찬가지로,
기본페이지 에 빠른실행을 나타내려면
C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\1042\STS\DOCTEMP\BLANKPGS
의 aspx 파일을 수정하면 된다.