第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

請問Win32進(jìn)程如何獲得其父進(jìn)程的pid?

請問Win32進(jìn)程如何獲得其父進(jìn)程的pid?

Win32進(jìn)程如何獲得其父進(jìn)程的pid?我正在將命令行上的pid傳遞給子進(jìn)程,但有沒有辦法在Win32 API中執(zhí)行此操作?或者,如果父母已經(jīng)去世,有人可以減輕我的擔(dān)心,即我經(jīng)過的pid可能會在一段時間后屬于另一個過程嗎?
查看完整描述

3 回答

?
慕神8447489

TA貢獻(xiàn)1780條經(jīng)驗 獲得超1個贊

請注意,如果父進(jìn)程終止,則很可能甚至可能將PID重用于另一個進(jìn)程。這是標(biāo)準(zhǔn)的Windows操作。

所以可以肯定的是,一旦你收到父母的id,并確定它真的是你的父母,你應(yīng)該打開它的句柄并使用它。


查看完整回答
反對 回復(fù) 2019-09-07
?
藍(lán)山帝景

TA貢獻(xiàn)1843條經(jīng)驗 獲得超7個贊

為了防止其他人遇到這個問題并且正在尋找代碼示例,我最近必須為我正在研究的Python庫項目執(zhí)行此操作。這是我提出的測試/示例代碼:

#include <stdio.h>#include <windows.h>#include <tlhelp32.h>int main(int argc, char *argv[]) {
    int pid = -1;
    HANDLE h = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
    PROCESSENTRY32 pe = { 0 };
    pe.dwSize = sizeof(PROCESSENTRY32);

    //assume first arg is the PID to get the PPID for, or use own PID
    if (argc > 1) {
        pid = atoi(argv[1]);
    } else {
        pid = GetCurrentProcessId();
    }

    if( Process32First(h, &pe)) {
        do {
            if (pe.th32ProcessID == pid) {
                printf("PID: %i; PPID: %i\n", pid, pe.th32ParentProcessID);
            }
        } while( Process32Next(h, &pe));
    }

    CloseHandle(h);}



查看完整回答
反對 回復(fù) 2019-09-07
?
瀟瀟雨雨

TA貢獻(xiàn)1833條經(jīng)驗 獲得超4個贊

更好的方法是調(diào)用DuplicateHandle()創(chuàng)建進(jìn)程句柄的可繼承副本。然后創(chuàng)建子進(jìn)程并在命令行上傳遞句柄值。 Close父進(jìn)程中的重復(fù)句柄。當(dāng)孩子完成后,它也需要Close復(fù)制

查看完整回答
反對 回復(fù) 2019-09-07
  • 3 回答
  • 0 關(guān)注
  • 667 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號