Seminární skupina PB173 Tématicky zaměřený vývoj aplikací v jazyce C/C++

Cvičenie 2: Procesy

Teoretická časť:

  • vstupný bod procesu
  • funkcia CreateProcess
  • ukončenie procesu
  • child procesy

Podporný učebný text:

Slidy k semináru:

Domáca úloha č.2:  (termín odovzdania: 13.10.2010 vč.)

2 body

Vytvorte konzolovú aplikáciu, ktorá vykoná požadovanú akciu na základe parametru príkazového riadku. Aplikáciu nazvite Ukol2. Možnosti príkazového riadku:

  • -l   - (list), aplikácia vypíše na konzolu zoznam všetkých procesov (meno procesu a ID) aktuálne bežiacich v systéme. (EnumProcesses, EnumProcessModules,...)
  • -d  -(details), aplikácia vypíše na konzolu informácie o svojom vlastnom procese (CreateToolhelp32Snapshot)
  • -k  -(kill), aplikácia vytvorí child proces (napr. C:\WINDOWS\system32\cmd.exe). Ak je proces vytvorený, vypíše na konzolu "Child Process" a následne ho ukončí (TerminateProcess). Ak sa child proces nepodarí vytvoriť, spracuje chybu.

Akýkoľvek iný parameter príkazového riadku spracujte ako chybu - vypíšte na konzolu zadaný parameter s chybovou hláškou, zoznam platných parametrov a program ukončite. V celom programe dôsledne dbajte na spracovanie chýb! Ak v programe nedôjde k žiadnej chybe, návratová hodnota je 0, inak lastError.