Uruchamianie exe w zakładce WinForm Project
Jestem zainteresowany pomocą w wykonywaniu poniższych czynności z aplikacją WinForm, którą piszę, aby otworzyć w zakładce plik .exe w c # w IDE Visual Studios 2010.
Obecnie jestem w stanie otworzyć program za pomocą kliknięcia przycisku na żądanej karcie przy użyciu następującego kodu:
string str = @"-INSERT FILEPATH HERE-";//took file path out as i have a few exes i'm wanting to add.
Process process = new Process();
process.StartInfo.FileName = str;
process.Start();
teraz jak mogę to zrobić, aby ten plik wykonywalny otwierał się jako karta lub karta, w mojej winformie? Jestem otwarty na sugestie dotyczące obu tych spraw.
ROZWIĄZANY:
using System.Runtime.InteropServices;
using System.Threading;
[DllImport("user32.dll", SetLastError = true)]
private static extern bool MoveWindow(IntPtr hwnd, int x, int y, int cx, int cy, bool repaint);
[DllImport("user32.dll", SetLastError = true)]
static extern IntPtr SetParent(IntPtr hWndChild, IntPtr hWndNewParent);
public GUI()
{
// Initialize form fieds
InitializeComponent();
openProgram()
}
private void openProgram()
{
process.StartInfo.FileName = "-filepathhere-";
process.Start();
IntPtr ptr = IntPtr.Zero;
while ((ptr = process.MainWindowHandle) == IntPtr.Zero) ;
SetParent(process.MainWindowHandle, trackerPanel.Handle);
MoveWindow(process.MainWindowHandle, 0, 0, this.Width - 90, this.Height, true);
}