Abra la ventana del explorador y espere a que se cierre

Tengo un programa que está abriendo una ventana del explorador en una carpeta determinada pero quiero realizar una acción justo después de que se cierre la ventana del explorador, pero si uso el siguiente código:

Process proc = Process.Start("explorer.exe", "D:\\");
proc.WaitForExit();

Está abriendo la ventana del explorador como lo desea, pero el comando WaitForExit no tiene ningún efecto y simplemente pasa de largo.

¿Existe una forma diferente de abrir la ventana del explorador que pueda avisarme cuando el usuario la cierre?

Respuestas a la pregunta(2)

Su respuesta a la pregunta