示例#1
0
 public void Activate()
 {
     if (diabloWindow != null)
     {
         DiabloWindow.SetHostPanel(diabloPanel);
         diabloWindow.Activate();
     }
 }
示例#2
0
        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);
                }
            }
        }