드라이버 코드 관련 url

IT/드라이버개발 2012. 10. 30. 16:37 Posted by Imtraveller
반응형

 

드라이버 코드

This file contains functions to detect running processes in the system

http://code.google.com/p/arkitlib/source/browse/trunk/ARKitDrv/Ps.c

 

유저모드 메모리 access

OpenProcess ->attachprocess

http://stackoverflow.com/questions/6316880/how-to-access-user-mode-memory

반응형
반응형

1       Vista/win7에서 windbg에서 debug message보기 설정

HKLM\SYSTEM\CCS\Control\Session Manager\

[Key] Debug Print Filter
[Value] Default : 0xF

 

2  Windows 7에서 메모리 FullDump생성 방법과 항상 메모리 Dump를 생성하는 방법

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl]

"CrashDumpEnabled"=dword:00000001

"AlwaysKeepMemoryDump"=dword:00000001

 

3  Dump관련

1.1       Dump확인 방법

Ctrix dmpchkex.exe를 실행하면 dump가 정상적인지 확인 할 수있다.

 

4. windbg에서 디버그 메세지 출력및 출력레벨 설정하기

http://www.osronline.com/article.cfm?article=295

반응형

'IT > 디버깅' 카테고리의 다른 글

Remote Windows Debugger Setting in VS2008  (0) 2014.11.21
덤프 생성방법  (0) 2013.01.24
About Netowork debugging in Windows 8  (0) 2012.12.20
프로세스 실행시 Windbg 실행하는 설정  (0) 2011.11.23
Windows Debug 설정  (0) 2011.11.22

GDI+관련 문서 링크

IT/인쇄제어 및 이미지처리 2012. 7. 4. 15:15 Posted by Imtraveller
반응형

GDI+관련 문서 링크

 

1.gdi+소개

http://www.soen.kr/lecture/library/gdiplus/1-1.htm

2.gdi+의 구조

http://www.soen.kr/lecture/library/gdiplus/1-2.htm

3.그리기함수

http://www.soen.kr/lecture/library/gdiplus/1-3.htm

4.펜

http://www.soen.kr/lecture/library/gdiplus/1-4.htm

5.브러쉬

http://www.soen.kr/lecture/library/gdiplus/1-5.htm

6.이미지

http://www.soen.kr/lecture/library/gdiplus/1-6.htm

7.폰트

http://www.soen.kr/lecture/library/gdiplus/1-7.htm

8.패스

http://www.soen.kr/lecture/library/gdiplus/1-8.htm

9.변환

http://www.soen.kr/lecture/library/gdiplus/1-9.htm

 

 

 

 

 






반응형

Driver관련 모음

IT/드라이버개발 2012. 2. 29. 14:03 Posted by Imtraveller
반응형

IRQL 레벨에 따른 BSOD
이번에 거래처 중국법인에서 발생한 BSOD를 분석했는데 IRQL레벨문제로 오류가 발생했었다.
KeSetEvent() <= DISPATH_LEVEL 조건에서 동작하는데 덤프내용을 보면 IRQL=28로 하드웨어 IRQL레벨일때 이벤트를 발생시켜 문제가 되었다.

그래서 현재의 IRQL레벨을 체크하는 코드를 추가하였다.

irql MSDN

http://msdn.microsoft.com/en-us/library/windows/hardware/ff553253(v=vs.85).aspx

KeGetCurrentIrql() x64 XP의 경우 다르다는데???
검토 필요함.
http://rurury.tistory.com/entry/KeGetCurrentIrql-x86-x64%EC%97%90%EC%84%9C-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0

반응형
반응형



다각형의 내부를 채우는 함수
SetPolyFillMode
The SetPolyFillMode function sets the polygon fill mode for functions that fill polygons.
int SetPolyFillMode( HDC hdc,  // handle of device context 
int iPolyFillMode  // polygon fill mode );
반응형

'IT > 프린트드라이버' 카테고리의 다른 글

OPOS Printer Device관련 정보  (0) 2013.11.07
3D 프린터 관련 정보 수집  (0) 2013.10.07

[MS]테스트용 VPC 다운로드 사이트

IT/주워담기 2012. 1. 5. 17:14 Posted by Imtraveller
반응형
MS에서 IE 테스트용 VPC 다운로드 사이트인데 급하게 영문 VPC테스트가 필요한경우
별도로 작업할 필요없이 다운로드하여 사용하면 좋겠다.

http://www.microsoft.com/download/en/details.aspx?id=11575
반응형

프로세스 실행시 Windbg 실행하는 설정

IT/디버깅 2011. 11. 23. 09:45 Posted by Imtraveller
반응형
아래와 같이 프로세스명을 등록하고 스트링으로 연결항 debugger를 설정하면된다.

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\xxxx.exe]
"debugger"="C:\\WinDDK\\7600.16385.0\\Debuggers\\windbg.exe"
반응형

'IT > 디버깅' 카테고리의 다른 글

Remote Windows Debugger Setting in VS2008  (0) 2014.11.21
덤프 생성방법  (0) 2013.01.24
About Netowork debugging in Windows 8  (0) 2012.12.20
Win 7 원격디버깅을 위한 레지스트리 설정방법 등  (0) 2012.07.18
Windows Debug 설정  (0) 2011.11.22

Windows Debug 설정

IT/디버깅 2011. 11. 22. 15:37 Posted by Imtraveller
반응형
Win XP/2K3 설정
1394
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows Server 2003, Enterprise" 
/fastdetect /debug /debugport=1394 /CHANNEL=3


COM
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows Server 2003, Enterprise" 
/fastdetect /debug /debugport=COM1 baudrate=115200

Win Vista/7/...설정
추가필요함.

vmware 설정

The other end is an application


I/O mode에서 Yield CPU를 추가해주자.



windbg 바로가기 설정

반응형
반응형


--------------------------------------------------------------------------------------
이미저장한 경우인지 확인방법
--------------------------------------------------------------------------------------

  IMSMQQueuePtr     pPeekQ = pInfo->Open(MQ_PEEK_ACCESS, MQ_DENY_NONE);
  // 같은 항목이 존재하는지 확인한 후 삽입한다.
  _variant_t       vtTimeOut((long)1000);        // 1 second until receive time-out
  _variant_t       bvtWantBody((bool)true);      // Set to retrieve message body
  _bstr_t           bstrBody;
  WCHAR   strCur[MAX_PATH];
  IMSMQMessagePtr   pRetMsg(L"MSMQ.MSMQMessage");
  pPeekQ->Reset();
  pRetMsg = pPeekQ->PeekCurrent(&vtMissing, &bvtWantBody, &vtTimeOut );
  while(pRetMsg != NULL)
  {
   ZeroMemory(strCur, sizeof(strCur));
   bstrBody = pRetMsg->Body;
   StringCchCopy(strCur, MAX_PATH, bstrBody);
   if(memcmp(strCur, strMessage, nSize) == 0)
   {
    bExist = TRUE;
    break;
   }

   pRetMsg = pPeekQ->PeekNext(&vtMissing, &bvtWantBody, &vtTimeOut);
  }

  pPeekQ->Close();
--------------------------------------------------------------------------------------
메세지큐에 등록된 갯수얻기
--------------------------------------------------------------------------------------
 int nCount = 0;
 QUEUEPROPID   propId[1];
 MQPROPVARIANT propVar[1];
 HRESULT       propStatus[1];
 DWORD         cprop = 0;

 propId [cprop] = PROPID_MGMT_QUEUE_MESSAGE_COUNT;
 propVar[cprop].vt = VT_NULL;
 ++cprop;
 
 MQMGMTPROPS mqProps;
 mqProps.cProp    = cprop;
 mqProps.aPropID  = propId;
 mqProps.aPropVar = propVar;
 mqProps.aStatus  = propStatus;

 WCHAR wszFormatName[MAX_PATH] ={0};
 WCHAR   *wszFormatNamePrefix = L"queue=DIRECT=OS:";
 StringCchPrintf(wszFormatName, MAX_PATH, L"%s%s\\%s", wszFormatNamePrefix, strPC, Queue);

   HRESULT hr = MQMgmtGetInfo( strPC, wszFormatName, &mqProps );
 if( FAILED( hr ) )
 {
    return 0;
 }
 else
 {
    return mqProps.aPropVar[0].ulVal;
 }
  return nCount;

반응형

[MSMQ]메시지 큐에 대하여

IT/개발관련 담기+ 2011. 11. 2. 09:15 Posted by Imtraveller
반응형
1. 설치 방법

.NET Framework 3.5
.NET Framework 4

다음 절차에서는 메시지 큐 4.0 및 메시지 큐 3.0을 설치하는 방법을 보여 줍니다.

참고:
Windows XP 및 Windows Server 2003에서는 메시지 큐 4.0을 사용할 수 없습니다.

 

Windows Server 2008에 메시지 큐 4.0을 설치하려면
  1. 서버 관리자에서 기능을 클릭합니다.

  2. 오른쪽 창의 기능 요약에서 기능 추가를 클릭합니다.

  3. 결과 창에서 메시지 큐를 확장합니다.

  4. 메시지 큐 서비스를 확장합니다.

  5. 디렉터리 서비스 통합을 클릭한 다음(도메인에 연결된 컴퓨터의 경우) HTTP 지원을 클릭합니다.

  6. 다음을 클릭한 후 설치를 클릭합니다.

Windows Vista에 메시지 큐 4.0을 설치하려면
  1. 제어판을 엽니다.

  2. 프로그램을 클릭한 다음 프로그램 및 기능에서 Windows 기능 사용/사용 안 함을 클릭합니다.

  3. MSMQ(Microsoft Message Queue) Server, MSMQ(Microsoft Message Queue) Server Core를 차례로 확장한 후 설치할 다음과 같은 메시지 큐 기능 확인란을 선택합니다.

    • MSMQ Active Directory 도메인 서비스 통합(도메인에 연결된 컴퓨터의 경우)
    • MSMQ HTTP 지원
  4. 확인을 클릭합니다.

  5. 컴퓨터를 다시 시작할지 묻는 메시지가 나타나면 확인을 클릭하여 설치를 완료합니다.

메시지 큐 3.0을 설치하려면
  1. 제어판을 엽니다.

  2. 프로그램 추가/제거를 클릭한 다음 Windows 구성 요소 추가를 클릭합니다.

  3. 메시지 큐를 선택하고 자세히를 클릭합니다.

참고:
Windows Server 2003을 실행 중인 경우 메시지 큐에 액세스하기 위해 응용 프로그램 서버를 선택합니다.

  1. MSMQ HTTP 지원을 비롯하여 모든 옵션이 자세히 페이지에 선택되어 있는지 확인합니다.
  2. 확인을 클릭하여 자세히 페이지를 끝낸 후 다음을 클릭합니다. 설치를 완료합니다.
  3. 컴퓨터를 다시 시작할지 묻는 메시지가 나타나면 확인을 클릭하여 설치를 완료합니다.
2. 관련 url
http://www.imaso.co.kr/?doc=bbs/gnuboard.php&bo_table=article&keywords=%C0%D0%C0%BB%B0%C5%B8%AE&page=37&wr_id=33925
반응형