AA2Install.formMain.tryDelete C# (CSharp) Method

tryDelete() public method

Tries to delete file, and prompts user if the file is being accessed.
public tryDelete ( string filename ) : TryDeleteResult
filename string
return TryDeleteResult
        public TryDeleteResult tryDelete(string filename)
        {
            bool tryAgain = false;

            do
            {

                try
                {
                    if (File.Exists(filename))
                    {
                        using (FileStream fs = new FileStream(filename, FileMode.Open, FileAccess.ReadWrite)) { }
                        File.Delete(filename);
                    }
                    tryAgain = false;
                }
                catch (IOException)
                {
                    switch (currentOwner.InvokeMessageBox("Failed to delete file " + filename + "; is it being accessed?", "Failed", MessageBoxButtons.AbortRetryIgnore))
                    {
                        case DialogResult.Retry:
                            tryAgain = true;
                            break;
                        case DialogResult.Ignore:
                            return TryDeleteResult.Ignored;
                        case DialogResult.Abort:
                            return TryDeleteResult.Cancelled;
                    }
                }

            } while (tryAgain);

            return TryDeleteResult.OK;
        }