using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Web; namespace ExportMap.cs { public class TBUtils { /// /// 获取源目录 /// public static string SourcesPath { get { return Path.Combine(Tools.BaseDir, "TerraBuilder"); } } /// /// 获取时间客串 /// public static string GetTime { get { return DateTime.Now.ToString("yyyyMMddhhmmss"); } } /// /// 创建MPT /// public static string CreateMpt(string path, ref string err) { string tbp = null; try { tbp = GetNewTbp(); return null; } catch (Exception ex) { LogOut.Error(ex.Message + "\r\n" + ex.StackTrace); err = ex.Message; return null; } finally { if (tbp != null && File.Exists(tbp)) File.Delete(tbp); } } /// /// 获取新Tbp文件 /// private static string GetNewTbp() { string tbp = Path.Combine(SourcesPath, "tb.tbp"); string newTbp = Path.Combine(SourcesPath, GetTime + ".tbp"); File.Copy(tbp, newTbp); return newTbp; } /// /// 获取新JS /// private static string GetNewJs(string tbp, string shp, string img, string dem) { string js = Path.Combine(SourcesPath, "template.js"); string str = File.ReadAllText(js); str = str.Replace("{tbp}", tbp) .Replace("{shp}", shp) .Replace("{img}", img) .Replace("{dem}", dem) .Replace("\\", "\\\\"); string newJs = Path.Combine(SourcesPath, GetTime + ".js"); File.WriteAllText(newJs, str); return newJs; } /// /// 重启TB程序 /// private static void ReloadTB() { List list = new List(); list.Add("taskkill /f /t /im TerraBuilder.exe"); list.Add("taskkill /f /t /im TBFuser.exe"); list.Add("start /d \"C:\\Program Files\\Skyline\\TerraBuilder Fuser\" TBFuser.exe"); Tools.ExecCmd(list, false); } } }