private void failure(string message, Exception e)
 {
     error = message + (e != null ? ": " + e.Message : "");
     if (request != null)
     {
         request.cancel();
     }
     if (file != null)
     {
         try { file.Close(); }
         catch (Exception) { }
     }
     try { System.IO.File.Delete(DocumentOpener.app_path + "/setup.exe"); }
     catch (Exception) { }
 }
 private void failure(string message, Exception e)
 {
     error = message + (e != null ? ": " + e.Message : "");
     if (request != null)
     {
         request.cancel();
     }
     if (file != null)
     {
         try { file.Close(); }
         catch (Exception) { }
     }
     try { DocumentOpener.RemoveDirectory(DocumentOpener.app_path + "/" + doc.storage_id); }
     catch (Exception) { }
 }