mirror of
https://github.com/SubtitleEdit/subtitleedit.git
synced 2024-10-27 14:32:35 +01:00
SE now creates AppData folder if installed via installer - and SE AppData folder is missing (prevents warning message + crash)
git-svn-id: https://subtitleedit.googlecode.com/svn/trunk@872 99eadd0c-20b8-1223-b5c4-2a2b2df33de2
This commit is contained in:
parent
c9dfe1643c
commit
d8252a5fcf
@ -104,21 +104,30 @@ namespace Nikse.SubtitleEdit.Logic
|
||||
else
|
||||
{
|
||||
string installerPath = GetInstallerPath();
|
||||
string pf = System.Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles).TrimEnd('\\');
|
||||
string pf = System.Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles).TrimEnd(Path.DirectorySeparatorChar);
|
||||
string appDataRoamingPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "Subtitle Edit");
|
||||
if (installerPath != null && BaseDirectory.ToLower().StartsWith(installerPath.ToLower().TrimEnd('\\')))
|
||||
if (installerPath != null && BaseDirectory.ToLower().StartsWith(installerPath.ToLower().TrimEnd(Path.DirectorySeparatorChar)))
|
||||
{
|
||||
if (Directory.Exists(appDataRoamingPath))
|
||||
{
|
||||
Instance._dataDir = appDataRoamingPath + Path.DirectorySeparatorChar;
|
||||
}
|
||||
else
|
||||
{
|
||||
try
|
||||
{
|
||||
System.IO.Directory.CreateDirectory(appDataRoamingPath);
|
||||
System.IO.Directory.CreateDirectory(Path.Combine(appDataRoamingPath, "Dictionaries"));
|
||||
Instance._dataDir = appDataRoamingPath + Path.DirectorySeparatorChar;
|
||||
}
|
||||
catch
|
||||
{
|
||||
Instance._dataDir = BaseDirectory;
|
||||
System.Windows.Forms.MessageBox.Show("Please re-install Subtitle Edit (installer version)");
|
||||
System.Windows.Forms.Application.ExitThread();
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (BaseDirectory.ToLower().StartsWith(pf.ToLower()) && Environment.OSVersion.Version.Major >= 6 ) // 6 == Vista/Win2008Server/Win7
|
||||
{ // windows vista and newer does not like programs writing to PF
|
||||
Instance._dataDir = BaseDirectory;
|
||||
|
Loading…
Reference in New Issue
Block a user