c++ win32 獲取進程啟動時間


HANDLE process = OpenProcess(PROCESS_QUERY_INFORMATION | PROCESS_VM_READ, FALSE, processID);
    if (process != NULL){
        FILETIME ftCreation, ftExit, ftKernel, ftUser;
        SYSTEMTIME stCreation, lstCreation;
        if (GetProcessTimes(process, &ftCreation, &ftExit, &ftKernel, &ftUser)) {
            FileTimeToSystemTime(&ftCreation, &stCreation);
            SystemTimeToTzSpecificLocalTime(NULL, &stCreation, &lstCreation);
        }
        CloseHandle(process);
    }
GetProcessTimes獲取到的是FILETIME,然后轉成SYSTEMTIME,SYSTEMTIME是格林威治時間,北京時間是UTC+8,所以轉換出來的時間會比電腦看到的時間少8小時
SystemTimeToTzSpecificLocalTime可以將SYSTEMTIME轉換成當前系統時區時間


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM