⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sprofile.c

📁 可用于嵌入式编程学习
💻 C
📖 第 1 页 / 共 2 页
字号:
/* Copyright (c) 1995-2000 Microsoft Corporation.  All rights reserved. */

/*+
	sprofile.c - system call profiling information.
*/

#ifdef SYSCALL_PROFILING
	#include "kernel.h"

	#define UNKNOWNMETHOD -1
	char *MethodToName(long iMethod, char ClassName[4]);
	int strncmp(const char *s1, const char *s2, unsigned int l);
	// tables to map iMethod function name
	// class name "USER" from \coreos\gwe\gwe\server\apiset.cpp
	char *USERNames[] = {	
    "GweNotifyCallback",                     /* 0  */
    "(reserved for NK)", /* RESERVED for NK */                        /* 1  */
    "RegisterClassWStub",                    /* 2  */
    "UnregisterClassW",                      /* 3  */
    "CWindowManager::CreateWindowExW",       /* 4  */
    "PostMessageW",                          /* 5  */
    "PostQuitMessage",                       /* 6  */
    "SendMessageW",                          /* 7  */
    "GetMessageW",                           /* 8  */
    "TranslateMessage",                      /* 9  */
    "DispatchMessageW",                      /* 10 */
    "GetCapture",                            /* 11 */
    "SetCapture",                            /* 12 */
    "ReleaseCapture",                        /* 13 */
    "CWindow::SetWindowPos",                  /* 14 */
    "CWindow::GetWindowRect",                 /* 15 */
    "CWindow::GetClientRect",                 /* 16 */
    "CWindow::InvalidateRect",                /* 17 */
    "CWindow::GetWindow",                     /* 18 */
    "GetSystemMetrics",                      /* 19 */
    "ImageList_GetDragImage",                /* 20 */
    "ImageList_GetIconSize",                 /* 21 */
    "ImageList_SetIconSize",                 /* 22 */
    "ImageList_GetImageInfo",                /* 23 */
    "ImageList_Merge",                       /* 24 */
    "CreateColorBitmap",                     /* 25 */
    "CreateMonoBitmap",                      /* 26 */
    "ImageList_CopyDitherImage",             /* 27 */
    "ImageList_DrawIndirect",                /* 28 */
    "ImageList_DragShowNolock",              /* 29 */
    "CWindowManager::WindowFromPoint",       /* 30 */
    "CWindow::ChildWindowFromPoint",           /* 31 */
    "CWindow::ClientToScreen",                 /* 32 */
    "CWindow::ScreenToClient",                 /* 33 */
    "CWindow::SetWindowText",                 /* 34 */
    "CWindow::GetWindowText",                 /* 35 */
    "CWindow::SetWindowLong",                 /* 36 */
    "CWindow::GetWindowLong",                 /* 37 */
    "CWindow::BeginPaint",                    /* 38 */
    "CWindow::EndPaint",                      /* 39 */
    "CWindow::GetDC",                         /* 40 */
    "CWindow::ReleaseDC",                     /* 41 */
    "CWindow::DefWindowProc",                 /* 42 */
    "CWindow::GetClassLong",                  /* 43 */
    "CWindow::SetClassLong",                  /* 44 */
    "CWindow::DestroyWindow",                 /* 45 */
    "CWindow::ShowWindow",                    /* 46 */
    "CWindow::UpdateWindow",                  /* 47 */
    "CWindow::SetParent",                     /* 48 */
    "CWindow::GetParent",                      /* 49 */
    "MessageBoxW",                           /* 50 */
    "SetFocus",                              /* 51 */
    "GetFocus",                              /* 52 */
    "GetActiveWindow",                       /* 53 */
    "CWindow::GetWindowDC",                   /* 54 */
    "GetSysColor",                           /* 55 */
    "AdjustWindowRectEx",                    /* 56 */
    "CWindow::IsWindow",                       /* 57 */
    "CreatePopupMenu",                       /* 58 */
    "InsertMenuW",                           /* 59 */
    "AppendMenuW",                           /* 60 */
    "RemoveMenu",                            /* 61 */
    "DestroyMenu",                           /* 62 */
    "TrackPopupMenuEx",                      /* 63 */
    "LoadMenuW",                             /* 64 */
    "EnableMenuItem",                        /* 65 */
    "CWindow::MoveWindow",                    /* 66 */
    "CWindow::GetUpdateRgn",                  /* 67 */
    "CWindow::GetUpdateRect",                 /* 68 */
    "CWindow::BringWindowToTop",              /* 69 */
    "CWindow::GetWindowTextLengthW",          /* 70 */
    "CWindow::IsChild",                       /* 71 */
    "CWindow::IsWindowVisible",               /* 72 */
    "CWindow::ValidateRect",                   /* 73 */
    "LoadBitmapW",                           /* 74 */
    "CheckMenuItem",                         /* 75 */
    "CheckMenuRadioItem",                    /* 76 */
    "DeleteMenu",                            /* 77 */
    "LoadIconW",                             /* 78 */
    "DrawIconEx",                            /* 79 */
    "DestroyIcon",                           /* 80 */
    "GetAsyncKeyState",                      /* 81 */
    "LoadStringW",                           /* 82 */
    "DialogBoxIndirectParamW",               /* 83 */
    "EndDialog",                             /* 84 */
    "GetDlgItem",                            /* 85 */
    "GetDlgCtrlID",                          /* 86 */
    "GetKeyState",                           /* 87 */
    "KeybdInquire",                          /* 88 */
    "KeybdInitStates",                       /* 89 */
    "PostKeybdMessage",                      /* 90 */
    "KeybdVKeyToUnicode",                    /* 91 */
    "keybd_event",                           /* 92 */
    "mouse_event",                           /* 93 */
    "CWindow::SetScrollInfo",                 /* 94 */
    "CWindow::SetScrollPos",                  /* 95 */
    "CWindow::SetScrollRange",                /* 96 */
    "CWindow::GetScrollInfo",                 /* 97 */
    "PeekMessageW",                          /* 98 */
    "MapVirtualKeyW",                        /* 99 */
    "GetMessageWNoWait",                     /* 100 */
    "GetClassNameW",                          /* 101 */
    "CWindowManager::MapWindowPoints",       /* 102 */
    "LoadImageW",                            /* 103 */
    "GetForegroundWindow",                   /* 104 */
    "SetForegroundWindow",                   /* 105 */
    "CWindowManager::RegisterTaskBar",       /* 106 */
    "SetActiveWindow",                       /* 107 */
    "CWindowManager::CallWindowProcW",       /* 108 */
    "GetClassInfoW",                         /* 109 */
    "GetNextDlgTabItem",                     /* 110 */
    "CreateDialogIndirectParamW",            /* 111 */
    "IsDialogMessage",                       /* 112 */
    "SetDlgItemInt",                         /* 113 */
    "GetDlgItemInt",                         /* 114 */
    "CWindowManager::FindWindowW",           /* 115 */
    "CreateCaret",                           /* 116 */
    "DestroyCaret",                          /* 117 */
    "HideCaret",                             /* 118 */
    "ShowCaret",                             /* 119 */
    "SetCaretPos",                           /* 120 */
    "GetCaretPos",                           /* 121 */
    "TouchGetCalibrationPointCount",         /* 122 */
    "TouchGetCalibrationPoint",              /* 123 */
    "TouchReadCalibrationPoint",             /* 124 */
    "TouchAcceptCalibration",                /* 125 */
    "ExtractIconExW",                        /* 126 */
    "SetTimer",                              /* 127 */
    "KillTimer",                             /* 128 */
    "GetNextDlgGroupItem",                   /* 129 */
	  "CheckRadioButton",                      /* 130 */
	  "CWindow::EnableWindow",  				/* 131 */
		"CWindow::IsWindowEnabled",			    /* 132 */
    "CreateMenu",                            /* 133 */
    "GetSubMenu",                            /* 134 */
    "LoadAcceleratorsW",						/* 135 */
    "CreateAcceleratorTableW",				/* 136 */
    "DestroyAcceleratorTable",				/* 137 */
    "TranslateAcceleratorW",					/* 138 */
    "sndPlaySoundW",							/* 139 */
    "waveOutGetVolume",						/* 140 */
    "waveOutSetVolume",                      /* 141 */
    "ImageList_Create",                      /* 142 */
    "ImageList_Destroy",                     /* 143 */
    "ImageList_GetImageCount",               /* 144 */
    "ImageList_Add",                         /* 145 */
    "ImageList_ReplaceIcon",                 /* 146 */
    "ImageList_SetBkColor",                  /* 147 */
    "ImageList_GetBkColor",                  /* 148 */
    "ImageList_SetOverlayImage",             /* 149 */
    "ImageList_Draw",                        /* 150 */
    "ImageList_Replace",                     /* 151 */
    "ImageList_AddMasked",                   /* 152 */
    "ImageList_DrawEx",                      /* 153 */
    "ImageList_Remove",                      /* 154 */
    "ImageList_GetIcon",                     /* 155 */
    "ImageList_LoadImage",                   /* 156 */
    "ImageList_BeginDrag",                   /* 157 */
    "ImageList_EndDrag",                     /* 158 */
    "ImageList_DragEnter",                   /* 159 */
    "ImageList_DragLeave",                   /* 160 */
    "ImageList_DragMove",                    /* 161 */
    "ImageList_SetDragCursorImage",          /* 162 */
    "AudioUpdateFromRegistry"               /* 163 */
		};
  // from gwe\gdi\server\gdiinit.cpp, classname "GDI"
  char *GDINames[] = {
    "GDINotifyCallback",
    "Fn_UnUsed", // reserved by kernel
    "AddFontResourceW",
    "BitBlt",
    "CombineRgn",
    "CreateCompatibleDC",
    "CreateDIBPatternBrushPt",
    "CreateDIBSectionStub",
    "CreateFontIndirectW",
    "CreateRectRgnIndirect",
    "CreatePenIndirect",
    "CreateSolidBrush",
    "DeleteDC",
    "DeleteObject",
    "DrawEdge",
    "DrawFocusRect",
    "DrawTextW",
    "Ellipse",
    "EnumFontFamiliesW",
    "EnumFontsW",
    "ExcludeClipRect",
    "ExtTextOutW",
    "FillRect",
    "Fn_UnUsed",  //Was FrameRgn
    "GetBkColor",
    "GetBkMode",
    "GetClipRgn",
    "GetCurrentObject",
    "GetDeviceCaps",
    "GetNearestColor",
    "GetObjectW",
    "GetObjectType",
    "GetPixel",
    "GetRegionData",
    "GetRgnBox",
    "GetStockObject",
    "PatBlt",
    "GetTextColor",
    "GetTextExtentExPointW",
    "GetTextFaceW",
    "GetTextMetricsW",
    "MaskBlt",
    "OffsetRgn",
    "Polygon",
    "Polyline",
    "PtInRegion",
    "Rectangle",
    "RectInRegion",
    "RemoveFontResourceW",
    "RestoreDC",
    "RoundRect",
    "SaveDC",
    "SelectClipRgn",
    "SelectObject",
    "SetBkColor",
    "SetBkMode",
    "SetBrushOrgEx",
    "SetPixel",
    "SetTextColor",
    "StretchBlt",
    "CreateBitmap",
    "CreateCompatibleBitmap",
    "GetSysColorBrush",
    "IntersectClipRect",
    "GetClipBox",
    "CeRemoveFontResource",
    "EnableEUDC",
    "CloseEnhMetaFile",
    "CreateEnhMetaFileW",
    "DeleteEnhMetaFile",
    "PlayEnhMetaFile",
    "CreatePalette",
    "SelectPalette",
    "RealizePalette",
    "GetPaletteEntries",
    "SetPaletteEntries",
    "GetSystemPaletteEntries",
    "GetNearestPaletteIndex",
    "CreatePen",
    "StartDocW",
    "EndDoc",
    "StartPage",
    "EndPage",
    "AbortDoc",
    "SetAbortProc",
    "CreateDCW",
    "CreateRectRgn", 
    "FillRgn",
    "SetROP2",
    "SetRectRgn",
    "RectVisible",
    "CreatePatternBrush",
    "CreateBitmapFromPointer",
    "SetViewportOrgEx",
    "TransparentImage",
    "SetObjectOwner",
	"InvertRect"
  };
  // from coreos\init.cpp, class name "INT"
  char *INTNames[] = { 
		"InitNotifyCallback",
    "0",
    "SC_Init_Initialized"
	};
  // from coreos\nktest\psltest\server\psl.c, class name "TEST"
  char *TESTNames[] = { 
    "0",
    "0",
    "TestAPI"
	};
  // from coreos\filesys\filesys.c, class name "W32A"
  char *W32ANames[] = { 
		"FS_ProcNotify",
		"0",
		"FS_CreateDirectoryW",
		"FS_RemoveDirectoryW",
		"FS_MoveFileW",
		"FS_CopyFileW",
		"FS_DeleteFileW",
		"FS_GetFileAttributes",

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -