社区
C#
帖子详情
winform如何嵌入外部的一个程序
chenyuling
2009-09-08 02:02:21
只是在界面上有一个区域,用于嵌入外部的一个程序,并不是调用这个程序,不需要什么数据交互。
被嵌入的程序随着自己的winform打开了之后就启动。
其实有点像网站中的iframe,不知道这样说大家明白了没有
请教如何实现这样的功能
...全文
503
6
打赏
收藏
winform如何嵌入外部的一个程序
只是在界面上有一个区域,用于嵌入外部的一个程序,并不是调用这个程序,不需要什么数据交互。 被嵌入的程序随着自己的winform打开了之后就启动。 其实有点像网站中的iframe,不知道这样说大家明白了没有 请教如何实现这样的功能
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wuyq11
2009-09-08
打赏
举报
回复
[DllImport("user32.dll", EntryPoint = "FindWindow")]
public static extern int FindWindow(
string lpClassName,
string lpWindowName
);
[DllImport("user32.dll", EntryPoint = "GetWindow")]
public static extern int GetWindow(
int hwnd,
int wCmd
);
[DllImport("user32.dll", EntryPoint = "SetParent")]
public static extern int SetParent(
int hWndChild,
int hWndNewParent
);
[DllImport("user32.dll", EntryPoint = "GetCursorPos")]
public static extern int GetCursorPos(
ref POINTAPI lpPoint
);
[StructLayout(LayoutKind.Sequential)]
public struct POINTAPI
{
public int X;
public int Y;
}
[DllImport("user32.dll", EntryPoint = "WindowFromPoint")]
public static extern int WindowFromPoint(
int xPoint,
int yPoint
);
private void timer1_Tick(object sender, EventArgs e)
{
POINTAPI point = new POINTAPI();
GetCursorPos(ref point);
int hwnd = WindowFromPoint(point.X, point.Y);
}
const int GW_CHILD = 5;
private void Form1_Load(object sender, EventArgs e)
{
int hDesktop = FindWindow("Progman", null);
hDesktop = GetWindow(hDesktop, GW_CHILD);
SetParent((int)this.Handle, hDesktop);
}
}
}
http://topic.csdn.net/u/20090226/17/369adba8-bb8f-41d3-b65d-c0e7a8697087.html
chenyuling
2009-09-08
打赏
举报
回复
现在是这样的问题,我已经获得了那个目标句柄如果用
SetParent(ParenthWnd,this.Handle);可以显示出来想调用的那个软件
但是如果想控制一下显示的位置
用SetParent(ParenthWnd,this.panel1.Handle); 却不能显示在panel1中
这是为什么呢?
wynn1
2009-09-08
打赏
举报
回复
写到onload事件里面就行了吧。
mjp1234airen4385
2009-09-08
打赏
举报
回复
楼上正解。
chenyuling
2009-09-08
打赏
举报
回复
顶一下,还有就是请教如何得到“目标句柄”
zgke
2009-09-08
打赏
举报
回复
使用API SetParent可以做到.. 但要注意自己窗体的位置
[DllImport("user32.dll", CharSet = CharSet.Auto)]
public extern static IntPtr SetParent(IntPtr hChild, IntPtr hParent);
SetParent(this.Handle,目标句柄);
C#
WInForm
窗体
嵌入
外部
EXE
程序
.zip
C#
WInForm
窗体
嵌入
外部
EXE
程序
实现
WinForm
中
嵌入
外部
EXE
程序
(调用系统api,源码)
实现在自己的
winform
内
嵌入
其他人的exe
程序
,从而可以实现多应用
程序
的组合,以及对原应用
程序
的部分功能的附加,但有部分受保护的应用
程序
则不能被
嵌入
从新手小白进入
WinForm
编程 (VS2019)
WinForm
框架 是 Windows Form 的简称,是美国微软公司Microsoft开发基于 .NET Framework 平台的桌面运用
程序
框架,一般使用 C#语言 编写。
WinForm
框架可用于设计窗体和可视控件,采用面向对象语言C#,可快速创建绚丽漂亮的基于Windows的桌面应用
程序
,提供丰富的控件与第三方开源组件,依靠.Net平台的成熟生态,让开发者可以高效快速的开发企业级项目!本课程是黄老师的 .Net平台开发系列课程之一,通过
WinForm
框架控件与精炼知识点的梳理与细致讲解,结合代码实战演练,帮助学员迅速掌握
WinForm
开发,达到企业级
WinForm
开发的水平!
winform
把exe
程序
嵌套在窗体中
winform
把将
外部
exe
程序
作为窗体的一部分,嵌套在自己定义的窗体中。
WinForm
中
嵌入
外部
exe
程序
WinForm
中
嵌入
外部
exe
程序
C#
110,546
社区成员
642,561
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章