finished automation

This commit is contained in:
Jakob 2018-07-06 23:05:42 +02:00
parent a26960cea1
commit 4b3163c80f
17 changed files with 153 additions and 93 deletions

View file

@ -95,7 +95,9 @@ namespace h_encore_auto
if (Directory.Exists(Ref.tempDir))
{
if (MessageBox.Show("Do you want to keep the downloaded files for future use?\nPressing no will wipe any leftover files of this application off your computer.", "Keep Files?", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
File.Create(Ref.tempDir + "keepfile");
{
keepFilesCleanup();
}
else
DeleteDirectory(Ref.tempDir);
}
@ -117,5 +119,74 @@ namespace h_encore_auto
return ci.TwoLetterISOLanguageName;
}
public static void CopyDir(string sourceDirName, string destDirName, bool copySubDirs)
{
// Get the subdirectories for the specified directory.
DirectoryInfo dir = new DirectoryInfo(sourceDirName);
if (!dir.Exists)
{
throw new DirectoryNotFoundException("Source directory does not exist or could not be found: " + sourceDirName);
}
DirectoryInfo[] dirs = dir.GetDirectories();
// If the destination directory doesn't exist, create it.
if (!Directory.Exists(destDirName))
{
Directory.CreateDirectory(destDirName);
}
// Get the files in the directory and copy them to the new location.
FileInfo[] files = dir.GetFiles();
foreach (FileInfo file in files)
{
string temppath = Path.Combine(destDirName, file.Name);
file.CopyTo(temppath, false);
}
// If copying subdirectories, copy them and their contents to new location.
if (copySubDirs)
{
foreach (DirectoryInfo subdir in dirs)
{
string temppath = Path.Combine(destDirName, subdir.Name);
CopyDir(subdir.FullName, temppath, copySubDirs);
}
}
}
public static void keepFilesCleanup()
{
if (!File.Exists(Ref.tempDir + "keepfile"))
{
File.Create(Ref.tempDir + "keepfile");
}
string backupTemp = Ref.tempDir + "keepfiles\\";
Directory.CreateDirectory(backupTemp);
foreach (string download in Ref.downloads)
{
File.Copy(Ref.tempDir + download, backupTemp + download);
}
Util.DeleteDirectory(Ref.tempDir + "\\app");
Util.DeleteDirectory(Ref.tempDir + "\\Far");
Util.DeleteDirectory(Ref.tempDir + "\\h-encore");
Util.DeleteDirectory(Ref.tempDir + "\\Qcma");
Util.DeleteDirectory(Ref.tempDir + "\\QcmaRes");
Util.DeleteDirectory(Ref.tempDir + "\\x64");
foreach (string file in Directory.GetFiles(Ref.tempDir))
{
File.Delete(file);
}
foreach (string download in Ref.downloads)
{
File.Copy(backupTemp + download, Ref.tempDir + download);
}
Util.DeleteDirectory(backupTemp);
}
}
}