本文主要介绍通过c#来启动外部exe(第三方软件)并嵌入到主窗口运行,在自己的应用程序中运行
一、启动外部exe相对简单
IntPtr hcalc; //用以存储目标窗口句柄
ProcessStartInfo ps = new ProcessStartInfo();
ps.FileName = Environment.ExpandEnvironmentVariables(exePath); //exePath要启动的外部应用程序路径
ps.WorkingDirectory = @"" ; //指定工作目录以确定相对路径
Process proc = Process.Start(ps);
new Thread(new ThreadStart(() =>
{
while (hcalc == IntPtr.Zero) //循环目标窗口启动完成
{
Thread.Sleep(10);
hcalc = FindWindow(null, "发现目标窗口");
SetParent(hcalc, hpanel1);
//SendMessage(hcalc, WM_SYSCOMMAND, SC_MINIMIZE, 0);
}
})).Start();
二、嵌入到启动敞口中运行 需要调用windows API
[DllImport("u

本文详细介绍了如何使用C# WPF启动一个外部的EXE程序,并将其嵌入到主应用程序窗口中运行。通过调用Windows API,实现了外部软件窗口的句柄获取和嵌入操作,确保程序在主窗口中无缝运行。
最低0.47元/天 解锁文章
368

被折叠的 条评论
为什么被折叠?



