Есть две функций прекращения выполнения процесса - TerminateProcess и ExitProcess. Функция TerminateProcess прекращает процесс с стороны, а функция ExitProcess прекращает из нутри. Использовать TerminateProcess не являеться хорошим стилем так как при вызове и выполнении этой функции не освобождаться связанные DLL и ресурсы.
VOID ExitProcess ( UINT uExitCode // код возврата );
Но обычно большинство программ используют другой способ. Когда все потоки, которые относятся к процессу в программе завершаться, тогда завершиться и процесс их породивший. Обратите внимание на то, что завершение процесса не приводит к завершению им порожденных процессов.