static CLog() { Assembly Assem = CAssembly.GetEntryOrExecuting(); if (Assem == null) { throw new Exception("Assem is null"); } string AppFolder = CAssembly.GetFolder(Assem); string AppName = Assem.GetName().Name; _LogFolder = Path.Combine(AppFolder, "Log\\" + AppName); }
/// <summary> /// 주의: 현재 시점에서는 참조하는 파일이 없을 수 있으므로 이곳에서는 참조하는 외부 파일을 이용하면 안됨. /// </summary> /// <param name="htRefs"></param> public static void SaveResourcesToFiles(Hashtable htRefs) { string ResName = "AutoUpdate." + Application.ProductName; ResourceManager rm = new ResourceManager(ResName, CAssembly.GetEntryOrExecuting()); foreach (DictionaryEntry d in htRefs) { string Name = (string)d.Key; string PathFile = (string)d.Value; string NewPathFile = Path.GetDirectoryName(Application.ExecutablePath) + "\\" + CPath.GetFileName(PathFile); if (System.IO.File.Exists(NewPathFile)) { continue; } byte[] byt = (byte[])rm.GetObject(Name); FileStream fs = new FileStream(NewPathFile, FileMode.Create, FileAccess.Write, FileShare.Write); fs.Write(byt, 0, byt.Length); fs.Close(); //DoctorGu.dll이 없을 수도 있으므로 //CFile.WaitForFileCreation(NewPathFile)을 사용하지 않음. for (int i = 0; i < 10; i++) { if (System.IO.File.Exists(NewPathFile)) { break; } System.Threading.Thread.Sleep(1000); } } }
public static Icon GetAssociatedIcon() { return(GetAssociatedIcon(CAssembly.GetEntryOrExecuting())); }