private static void installHtmlEdiotr(Form caller) { try { string srcDir = Path.Combine(Path.GetDirectoryName(Application.ExecutablePath), "DistributeIIS"); if (Directory.Exists(srcDir)) { string newFile = Path.Combine(srcDir, "new.txt"); if (File.Exists(newFile)) { bool bErr; string localhostDir = IisUtility.FindLocalRootWebPath(caller, out bErr); if (string.IsNullOrEmpty(localhostDir)) { MessageBox.Show(caller, "Cannot get physical path for web root.", "Checking web root", MessageBoxButtons.OK, MessageBoxIcon.Error); } else if (!Directory.Exists(localhostDir)) { MessageBox.Show(caller, string.Format(CultureInfo.InvariantCulture, "Folder {0} does not exist", srcDir), "Initialize Visual Programming", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { if (MessageBox.Show(caller, string.Format(CultureInfo.InvariantCulture, "Visual Web Page Editor requires that full control permission is granted to Everyone for folder {0}. \r\n\r\nDo you want to allow it?", localhostDir), "Visual Web Page Editor", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes) { string e; StringBuilder sbErr = new StringBuilder(); e = VPLUtil.GrantFileFullPermission(localhostDir); if (!string.IsNullOrEmpty(e)) { sbErr.Append(string.Format(CultureInfo.InvariantCulture, "Error granting permissions for [{0}]. {1}\r\n", localhostDir, e)); } else { string tgt; string[] ss = Directory.GetFiles(srcDir); for (int i = 0; i < ss.Length; i++) { string sn = Path.GetFileName(ss[i]); if (string.Compare(sn, "new.txt", StringComparison.OrdinalIgnoreCase) != 0) { tgt = Path.Combine(localhostDir, sn); File.Copy(ss[i], tgt, true); e = VPLUtil.GrantFileFullPermission(tgt); if (!string.IsNullOrEmpty(e)) { sbErr.Append(string.Format(CultureInfo.InvariantCulture, "Error granting permissions for [{0}]. {1}\r\n", tgt, e)); } } } ss = Directory.GetDirectories(srcDir); for (int i = 0; i < ss.Length; i++) { tgt = Path.Combine(localhostDir, Path.GetFileName(ss[i])); copyFolder(ss[i], tgt, sbErr); } } if (sbErr.Length > 0) { MessageBox.Show(caller, string.Format(CultureInfo.InvariantCulture, "Error setting up Visual Web Editor.\r\n {0}", sbErr.ToString()), "Initialize Visual Programming", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { File.Delete(newFile); DesignUtil.EnableHtmlEditor(); } } } } else { DesignUtil.EnableHtmlEditor(); } } else { MessageBox.Show(caller, string.Format(CultureInfo.InvariantCulture, "Folder {0} does not exist", srcDir), "Initialize Visual Programming", MessageBoxButtons.OK, MessageBoxIcon.Error); } } catch (Exception err) { MessageBox.Show(caller, err.Message, "Initialize Visual Programming", MessageBoxButtons.OK, MessageBoxIcon.Error); } }