You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

137 lines
4.4 KiB

/////////////////////////////////////////////////////////////////
//
// (C) Copyright 2009, Kenneth, Inc.
// All rights reserved. Confidential. Except as pursuant
// to a written agreement with Kenneth, this software may
// not be used or distributed. This software may be covered
// by one or more patents.
//
/////////////////////////////////////////////////////////////////
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;
using System.Text.RegularExpressions;
namespace GummingCommon
{
/// <summary>
/// Define file directory.
/// Provide all of the directory for the whole appliction.
/// Most of the directory from defined by Kenneth system services.
/// Include library file,log file,configuration file,application file.
/// </summary>
public class FilesDirectory
{
public static void PrePareParameters()
{
if (!Directory.Exists(MyDocuments))
{
Directory.CreateDirectory(MyDocuments);
}
}
/// <summary>
/// Application exe path
/// </summary>
/*/////
Application exe path//*/
public static string ApplicationPath = Directory.GetParent(System.AppDomain.CurrentDomain.BaseDirectory).FullName + "\\";/////*/
/// <summary>
/// system temp folder
/// </summary>
public static string TempPath = Environment.GetEnvironmentVariable("Temp") + "\\";
public static string MyDocuments = System.Environment.GetFolderPath(System.Environment.SpecialFolder.MyDocuments) + "\\Gumming\\";
public static string MyTrace = MyDocuments + "trace.ini";
public static string PatternImagePath = ApplicationPath + "PatternImage\\";
public static string PatternPath = ApplicationPath + "Pattern\\";
public static string SystemLogPath = ApplicationPath + "log\\logInfo";
public static string AppTempPath = ApplicationPath + "Temp\\";
public static string SettingPath = ApplicationPath + "Setting\\{0}";
public static string BackupPath = ApplicationPath + "Backup\\{0}";
public static string DbBackupPath = ApplicationPath + "Backup\\db\\";
/// <summary>
/// system temp folder
/// </summary>
public static string IniSettingPath = ApplicationPath + "Setting\\Setting.ini";
public static string PatternSettingPath = ApplicationPath + "Setting\\PatternSetting.ini";
public static string DatabasePath = ApplicationPath + "Database\\4C.db";
public static string LogDatabasePath = ApplicationPath + "Database\\Log.db";
/// <summary>
/// system temp folder
/// </summary>
public static string LatestPatternPath = ApplicationPath + "Setting\\Pattern.pat";
public static string LatestPatternFormPath = ApplicationPath + "Setting\\PatternForm.pat";
public static string LatestBackPatternPath = ApplicationPath + "Setting\\Pattern.bak";
public static string DoublePositionPath = ApplicationPath + "Setting\\{0}\\DoublePosition{1}.jsn";
public static string SinglePositionPath = ApplicationPath + "Setting\\{0}\\SinglePosition{1}.jsn";
/// <summary>
/// creat directory
/// </summary>
/// <param name="folder"></param>
/*/////
creat directory//*/
public static void CreateAnyDirectory(string folder)/////*/
{
if (!Directory.Exists(folder))
{
Directory.CreateDirectory(folder);
}
}
/// <summary>
/// valid folder name.
/// </summary>
/// <param name="strFolderName">Name of the folder.</param>
/// <returns></returns>
public static bool ValideFolderName(string strFolderName)
{
try
{
Regex regExp = new Regex("[\\\\/:*?\"<>|]");
return !regExp.IsMatch(strFolderName);
}
catch
{
return false;
}
}
public static string GetFileNameWithoutExtension(string filename)
{
return Path.GetFileNameWithoutExtension(filename);
}
public static string GetExtension(string filename)
{
return Path.GetExtension(filename);
}
}
}