public void Activate() { if (diabloWindow != null) { DiabloWindow.SetHostPanel(diabloPanel); diabloWindow.Activate(); } }
public void LoadDiablo2() { if (diabloWindow == null) { if (!string.IsNullOrEmpty(exePath) && System.IO.File.Exists(exePath)) { Process diabloProcess = new Process(); ProcessStartInfo info = new ProcessStartInfo(); info.FileName = exePath; if (((CheckBox)this.Controls[2]).Checked) { info.Arguments = "-w -sndbkg"; } else { info.Arguments = "-w -ns"; } diabloProcess = Process.Start(info); diabloProcess.EnableRaisingEvents = true; diabloProcess.Exited += new EventHandler(diabloProcess_Exited); // Wait for the app to load diabloProcess.WaitForInputIdle(); diabloHandle = diabloProcess.MainWindowHandle; // If greater than Windows XP if (Environment.OSVersion.Version.Major > 5) { diabloWindow = new DiabloWindow(Application.OpenForms[0], diabloPanel, diabloHandle, Text); diabloPanel.BindDiabloWindow(diabloWindow); if (((TabControl)this.Parent).SelectedTab == this) { diabloWindow.Activate(); } else { diabloWindow.Deactivate(); } } } else { //ConsoleTab.WriteLine("Could not find diablo 2 game.exe " + exePath); } } }