//Install Script private void button3_Click(object sender, EventArgs e) { try { if (button3.Text == "Uninstall") { LocalScripts.UninstallScript(form, button3.Tag.ToString() + "\\test", name); return; } else { button3.Text = "Installing..."; button3.Refresh(); if (!Directory.Exists(Path.GetDirectoryName(Application.ExecutablePath) + @"\tmp")) { Directory.CreateDirectory(Path.GetDirectoryName(Application.ExecutablePath) + @"\tmp"); } if (File.Exists(Path.GetDirectoryName(Application.ExecutablePath) + @"\tmp\Install.zip")) { File.Delete(Path.GetDirectoryName(Application.ExecutablePath) + @"\tmp\Install.zip"); } if (Networking.DownloadScript(form, id)) { Networking.IncreaseDownloads(null, id); try { Directory.Delete(Main.sf.streamlabsPath + @"Services\Scripts\" + id + "\\", true); } catch { } Directory.CreateDirectory(Main.sf.streamlabsPath + @"Services\Scripts\" + id + "\\"); ZipFile.ExtractToDirectory(Path.GetDirectoryName(Application.ExecutablePath) + @"\tmp\Install.zip", Main.sf.streamlabsPath + @"Services\Scripts\" + id + "\\"); File.Delete(Path.GetDirectoryName(Application.ExecutablePath) + @"\tmp\Install.zip"); foreach (FileInfo file in new DirectoryInfo(Main.sf.streamlabsPath + @"Services\Scripts\" + id + "\\").GetFiles()) { if (file.Name.Contains("_StreamlabsSystem.py") || file.Name.Contains("_AnkhBotSystem.py") || file.Name.Contains("_StreamlabsParameter.py") || file.Name.Contains("_AnkhBotParameter.py")) { bool found = false; string[] lines = File.ReadAllLines(file.FullName); using (StreamWriter writer = new StreamWriter(file.FullName)) { for (int i = 0; i < lines.Length; i++) { writer.WriteLine(lines[i]); if (lines[i].ToLower().Contains("version") && !found) { writer.WriteLine("ScriptBrowserID = \"" + id + "\""); found = true; } } if (!found) { writer.WriteLine(""); writer.WriteLine("ScriptBrowserID = \"" + id + "\""); } } break; } } return; } } } catch (Exception ex) { Console.WriteLine(ex.StackTrace); Networking.SMB(form, "There was an unexpected error!\nPlease make sure you have an internet connection.", "Installation error", MessageBoxButtons.RetryCancel, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1, 2); } try { Directory.Delete(Main.sf.streamlabsPath + @"Services\Scripts\" + id + "\\", true); } catch { } button3.Text = "Download and Install"; }