C++/Windows Object 모든 종류 구분

  1. // 빈도 많음
  2. if (0 == _tcsicmp(TEXT("Key"), pstInfo->TypeName.Buffer))
  3.     (*pnObject) = TYPE_KERNEL_OBJECT_KEY;
  4. else if (0 == _tcsicmp(TEXT("File"), pstInfo->TypeName.Buffer))
  5.     (*pnObject) = TYPE_KERNEL_OBJECT_FILE;
  6. else if (0 == _tcsicmp(TEXT("Thread"), pstInfo->TypeName.Buffer))
  7.     (*pnObject) = TYPE_KERNEL_OBJECT_THREAD;
  8. else if (0 == _tcsicmp(TEXT("Directory"), pstInfo->TypeName.Buffer))
  9.     (*pnObject) = TYPE_KERNEL_OBJECT_DIRECTORY;
  10. else if (0 == _tcsicmp(TEXT("Section"), pstInfo->TypeName.Buffer))
  11.     (*pnObject) = TYPE_KERNEL_OBJECT_SECTION;
  12. else if (0 == _tcsicmp(TEXT("Event"), pstInfo->TypeName.Buffer))
  13.     (*pnObject) = TYPE_KERNEL_OBJECT_EVENT;
  14. else if (0 == _tcsicmp(TEXT("Mutant"), pstInfo->TypeName.Buffer))
  15.     (*pnObject) = TYPE_KERNEL_OBJECT_MUTANT;
  16. else if (0 == _tcsicmp(TEXT("Port"), pstInfo->TypeName.Buffer))
  17.     (*pnObject) = TYPE_KERNEL_OBJECT_PORT;
  18. // 빈도 적음
  19. else if (0 == _tcsicmp(TEXT("KeyedEvent"), pstInfo->TypeName.Buffer))
  20.     (*pnObject) = TYPE_KERNEL_OBJECT_KEYEDEVENT;
  21. else if (0 == _tcsicmp(TEXT("Token"), pstInfo->TypeName.Buffer))
  22.     (*pnObject) = TYPE_KERNEL_OBJECT_TOKEN;
  23. else if (0 == _tcsicmp(TEXT("WindowStation"), pstInfo->TypeName.Buffer))
  24.     (*pnObject) = TYPE_KERNEL_OBJECT_WINDOWSTATION;
  25. else if (0 == _tcsicmp(TEXT("Type"), pstInfo->TypeName.Buffer))
  26.     (*pnObject) = TYPE_KERNEL_OBJECT_TYPE;
  27. else if (0 == _tcsicmp(TEXT("SymbolicLink"), pstInfo->TypeName.Buffer))
  28.     (*pnObject) = TYPE_KERNEL_OBJECT_SYMBOLICLINK;
  29. else if (0 == _tcsicmp(TEXT("Process"), pstInfo->TypeName.Buffer))
  30.     (*pnObject) = TYPE_KERNEL_OBJECT_PROCESS;
  31. else if (0 == _tcsicmp(TEXT("Job"), pstInfo->TypeName.Buffer))
  32.     (*pnObject) = TYPE_KERNEL_OBJECT_JOB;
  33. else if (0 == _tcsicmp(TEXT("DebugObject"), pstInfo->TypeName.Buffer))
  34.     (*pnObject) = TYPE_KERNEL_OBJECT_DEBUGOBJECT;
  35. else if (0 == _tcsicmp(TEXT("EventPair"), pstInfo->TypeName.Buffer))
  36.     (*pnObject) = TYPE_KERNEL_OBJECT_EVENTPAIR;
  37. else if (0 == _tcsicmp(TEXT("Callback"), pstInfo->TypeName.Buffer))
  38.     (*pnObject) = TYPE_KERNEL_OBJECT_CALLBACK;
  39. else if (0 == _tcsicmp(TEXT("Semaphore"), pstInfo->TypeName.Buffer))
  40.     (*pnObject) = TYPE_KERNEL_OBJECT_SEMAPHORE;
  41. else if (0 == _tcsicmp(TEXT("Timer"), pstInfo->TypeName.Buffer))
  42.     (*pnObject) = TYPE_KERNEL_OBJECT_TIMER;
  43. else if (0 == _tcsicmp(TEXT("Profile"), pstInfo->TypeName.Buffer))
  44.     (*pnObject) = TYPE_KERNEL_OBJECT_PROFILE;
  45. else if (0 == _tcsicmp(TEXT("Desktop"), pstInfo->TypeName.Buffer))
  46.     (*pnObject) = TYPE_KERNEL_OBJECT_DESKTOP;
  47. else if (0 == _tcsicmp(TEXT("WaitablePort"), pstInfo->TypeName.Buffer))
  48.     (*pnObject) = TYPE_KERNEL_OBJECT_WAITABLEPORT;
  49. else if (0 == _tcsicmp(TEXT("Adapter"), pstInfo->TypeName.Buffer))
  50.     (*pnObject) = TYPE_KERNEL_OBJECT_ADAPTER;
  51. else if (0 == _tcsicmp(TEXT("Controller"), pstInfo->TypeName.Buffer))
  52.     (*pnObject) = TYPE_KERNEL_OBJECT_CONTROLLER;
  53. else if (0 == _tcsicmp(TEXT("Device"), pstInfo->TypeName.Buffer))
  54.     (*pnObject) = TYPE_KERNEL_OBJECT_DEVICE;
  55. else if (0 == _tcsicmp(TEXT("Driver"), pstInfo->TypeName.Buffer))
  56.     (*pnObject) = TYPE_KERNEL_OBJECT_DRIVER;
  57. else if (0 == _tcsicmp(TEXT("IoCompletion"), pstInfo->TypeName.Buffer))
  58.     (*pnObject) = TYPE_KERNEL_OBJECT_IOCOMPLETION;
  59. else if (0 == _tcsicmp(TEXT("WmiGuid"), pstInfo->TypeName.Buffer))
  60.     (*pnObject) = TYPE_KERNEL_OBJECT_WMIGUID;
  61. else if (0 == _tcsicmp(TEXT("FilterConnectionPort"), pstInfo->TypeName.Buffer))
  62.     (*pnObject) = TYPE_KERNEL_OBJECT_FILTERCONNECTIONPORT;
  63. else if (0 == _tcsicmp(TEXT("FilterCommunicationPort"), pstInfo->TypeName.Buffer))
  64.     (*pnObject) = TYPE_KERNEL_OBJECT_FILTERCOMMUNICATIONPORT;
  65. else
  66.     (*pnObject) = TYPE_KERNEL_OBJECT_OTHER;

이 글에는 0 개의 댓글이 있습니다.