【已解决】如何在界面上嵌入其它程序
本帖最后由 vigiles 于 2012-6-11 11:34 编辑我已经知道可以嵌入一个ie浏览器了。但是如何嵌入exe程序呢?我想写个小工具mytool,界面上嵌入了virtual drive 和wincab,运行后,就像嵌入ie一样可以直接操作。
请大家赐教! _WinAPI_SetParent
修改子窗口的父窗口. 回复 2# 星雨朝霞
谢谢!我刚学这个,不太懂。能不能具体讲讲? 额!你所说的"嵌入"是怎么个嵌入法? 回复 4# 星雨朝霞
就像在ie里嵌入flash那种效果。 回复 4# 星雨朝霞
就像在autoit里嵌入ie,去除ie标题栏和菜单栏,剩余的主体完全在autoit窗体里。尽管我们感觉是操作autoit窗体,实际是控制的ie,对吧
现在想把那两个小工具嵌入进来,达到上面的效果。因为以前没接触过编程,所有不是很明白你讲的那个命令。
帮助里没有例子,请问你能给一个吗?不胜感激! 先从基础开始学起吧,基础都不会的东西,人家说了你也听不懂、看不懂! 建议不要这样玩,很麻烦。还不如自己写相关功能,写不了的话就调用命令行,没有命令行参数就直接调用运行之… 总之建议还未下手前趁早收手。 回复 8# afan
能否教授下_ winapi _ setparent 的用法? 回复 9# vigiles
帮助文档有实例#Include <WinAPIEx.au3>
#Include <WindowsConstants.au3>
Opt('MustDeclareVars', 1)
Global $hParent, $hChild
$hParent = GUICreate('Parent', 400, 400, 200, 200)
GUICtrlCreateLabel('', 0, 0, 0, 0)
GUISetState()
$hChild = GUICreate('Child', 200, 200, 0, 0, BitOR($WS_CAPTION, $WS_MAXIMIZEBOX, $WS_MINIMIZEBOX, $WS_POPUP, $WS_SYSMENU))
_WinAPI_SetParent($hChild, $hParent)
GUISetState()
Do
Until GUIGetMsg() = -3是针对自建窗口的,如需第三方程序作为Child则先获取其窗口句柄。要折腾就自己搞吧 #Include <WinAPIEx.au3>
#Include <WindowsConstants.au3>
Opt('MustDeclareVars', 1)
Global $hParent, $hChild
$hParent = GUICreate('Parent', 800,600)
GUISetState()
Run('E:\文件库\虚拟软件\Virtual_Drive\Virtual_Drive.exe')
$hChild=WinWait('Virtual Drive Manager','详情')
_WinAPI_SetParent($hChild, $hParent)
WinMove($hChild,'',0,0)
Do
Until GUIGetMsg() = -3
WinKill($hChild) 回复 8# afan
估计1楼楼主,正是想问如何在没有命令行参数情况下直接运行第三方程序,并且可以在AU3里控件它。 回复 11# 星雨朝霞
非常感谢,为什么我编译这段代码后还是两个独立的界面?virtual drive 并没有嵌入父窗体里,也互不影响。我用的xp系统。 回复 12# 楼上风云
我是想实现就像在ie 里操作flash 那种效果。子窗体的标题、菜单都消失,其余的出现在父窗体里。 无解{:face (382):}
页:
[1]