Compartilhar via


Funções de processo para depuração

A função CreateProcess permite que um depurador inicie um processo e o depure. O parâmetro fdwCreate de CreateProcess é usado para especificar o tipo de operação de depuração. Se o sinalizador DEBUG_PROCESS for especificado para o parâmetro, um depurador depurará o novo processo e todos os descendentes do processo, desde que os descendentes sejam criados sem o sinalizador DEBUG_PROCESS.

Se os sinalizadores DEBUG_PROCESS e DEBUG_ONLY_THIS_PROCESS forem especificados para fdwCreate, um depurador depurará o novo processo, mas nenhum de seus descendentes.

Um depurador pode depurar outro criando um processo com o sinalizador DEBUG_PROCESS. O novo processo (o depurador que está sendo depurado) deve então criar um processo com o sinalizador DEBUG_PROCESS.

A função OpenProcess permite que um depurador obtenha o identificador de um processo existente. (O A função DebugActiveProcess usa esse identificador para anexar o depurador ao processo.) Normalmente, os depuradores abrem um processo com os sinalizadores PROCESS_VM_READ e PROCESS_VM_WRITE. O uso desses sinalizadores permite que o depurador leia e grave na memória virtual do processo usando as funções ReadProcessMemory e WriteProcessMemory. Para obter mais informações, consulte Processos e threads.