ShellExecute(NULL,"open","delete.bat",NULL,NULL,SW_SHOW);
라고 코드를 작성하였습니다.( 이 코드를 test.exe로 컴파일하였습니다.)
delete.bat의 내용은 del test.exe입니다.
제 질문은 test.exe가 실행이 끝난후 delete.bat에 의해 자신이 삭제되는데요
생각해보면 실행중인 프로세스를 지우려니깐 실행이 완료된 후 delete.bat에 의해 자신(test.exe)이 삭제될텐데요
이러한 처리는 os 에서 해주는건가요?
조사해보니깐 ShellExecute() API 함수에 의해 하드 디스크에서 test.exe 파일은 삭제하고
메모리 상에는 test.exe가 맵핑됐기 때문에 그대로 남아있어서 계속 자신(test.exe)을 실행시킬 수 있대요.
제가 조사한 내용이 올바른건가요?