Это можно сделать в Linux. Вы обнаружите, что вообще невозможно удалить исполняемый файл в Windows. Тем не менее, вы можете удалить Windows EXE для следующей перезагрузки: http://www.howtodothings.com/computers/a1402-delete-a-running-exe.html
Если вы хотите, чтобы файл был удален после его запуска, вы можете просто попросить пользователя его удалить. Если причина, по которой вы хотите, это мера безопасности, то то, что вы делаете, ошибочно. Пользователь может обойти это, просто сделав копию файла первым.