oddio una soluzione migliore esiste (quasi) sempre!
in questo caso al posto degli if basta istituire un blocco catch per ognuna delle condizioni verificabili che ti interessa gestire.
Codice:
try
{
Directory.Delete(path, true); //Cancella i dati
MessageBox.Show("Sistema ripulito con successo", "Eseguito", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
catch (DirectoryNotFoundException)
{
MessageBox.Show("Non c'era bisogno di cancellare, tutto era pulito", "Eseguito", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
catch (IOException)
{
MessageBox.Show("Chiudere tutte le applicazioni e riprovare", "Applicazione in esecuzione!", MessageBoxButtons.OK, MessageBoxIcon.Error);
}