Delen via


Overname afhandelen

Een onderliggend proces kan ingangen overnemen van het bovenliggende proces. Een overgenomen ingang is alleen geldig in de context van het onderliggende proces. Als u wilt dat een onderliggend proces open ingangen van het bovenliggende proces overneemt, gebruikt u de volgende stappen.

  1. Maak de ingang met de bInheritHandle lid van de SECURITY_ATTRIBUTES structuur ingesteld op TRUE.
  2. Maak het onderliggende proces met behulp van de functie CreateProcess, waarbij de parameter bInheritHandles is ingesteld op TRUE-.

Met de functie DuplicateHandle wordt een ingang gedupliceerd die moet worden gebruikt in het huidige proces of in een ander proces. Als een toepassing een van de ingangen voor een ander proces dupliceren, is de gedupliceerde ingang alleen geldig in de context van het andere proces.

Een gedupliceerde of overgenomen ingang is een unieke waarde, maar verwijst naar hetzelfde object als de oorspronkelijke ingang. Processen kunnen ingangen overnemen of dupliceren naar de volgende typen objecten:

  • Toegangstoken
  • Communicatieapparaat
  • Console-invoer
  • Consoleschermbuffer
  • Bureaublad
  • Map
  • Gebeurtenis
  • Bestand
  • Bestandstoewijzing
  • Baan
  • Mailslot
  • Mutex
  • Pijp
  • Proces
  • Registersleutel
  • Semafoor
  • Stopcontact
  • Draad
  • Timer
  • Vensterstation

Alle andere objecten zijn privé voor het proces dat ze heeft gemaakt; hun objectgrepen kunnen niet worden gedupliceerd of overgenomen.

Zie Overnamevoor meer informatie.