zoukankan      html  css  js  c++  java
  • Windows获取线程起始地址

    typedef enum _THREADINFOCLASS {
        ThreadBasicInformation,
        ThreadTimes,
        ThreadPriority,
        ThreadBasePriority,
        ThreadAffinityMask,
        ThreadImpersonationToken,
        ThreadDescriptorTableEntry,
        ThreadEnableAlignmentFaultFixup,
        ThreadEventPair_Reusable,
        ThreadQuerySetWin32StartAddress,
        ThreadZeroTlsCell,
        ThreadPerformanceCount,
        ThreadAmILastThread,
        ThreadIdealProcessor,
        ThreadPriorityBoost,
        ThreadSetTlsArrayAddress,
        ThreadIsIoPending,
        ThreadHideFromDebugger,
        ThreadBreakOnTermination,
        MaxThreadInfoClass
    } THREADINFOCLASS;
    
    typedef LONG (WINAPI *NtQueryInformationThreadProc)(
        _In_       HANDLE ThreadHandle,
        _In_       THREADINFOCLASS ThreadInformationClass,
        _Inout_    PVOID ThreadInformation,
        _In_       ULONG ThreadInformationLength,
        _Out_opt_  PULONG ReturnLength
        );
    
    NtQueryInformationThreadProc   NtQueryInformationThread = NULL;
    hNtdll                      = GetModuleHandleW(L"ntdll.dll");
    NtQueryInformationThread    = (NtQueryInformationThreadProc)GetProcAddress(hNtdll, "NtQueryInformationThread");
    
    HANDLE  hThread = NULL;
    PVOID   pvStart = NULL;
    hThread = OpenThread(THREAD_QUERY_INFORMATION | THREAD_TERMINATE, FALSE, te32.th32ThreadID);
    NtQueryInformationThread(hThread, ThreadQuerySetWin32StartAddress, &pvStart, sizeof(pvStart), NULL);
  • 相关阅读:
    Python类的继承(进阶5)
    面向对象编程基础(进阶4)
    Python模块(进阶3)
    Python函数式编程(进阶2)
    python多线程
    Ternary Search Tree Java实现
    Trie和Ternary Search Tree介绍
    索引时利用K-邻近算法过滤重复歌曲
    Sql排名和分组排名
    Lucene和jackson冲突
  • 原文地址:https://www.cnblogs.com/codeape/p/3745629.html
Copyright © 2011-2022 走看看