在c#表单中嵌入第三方AIR程序
我在寻找一种方法,在visual c#form中嵌入一个独立的AIR-singleform AIR程序 我不需要和它有任何交流,我只需要让它“卡”在我身体的某个区域,这样它就会随着我移动,当我移动时,它就会调整大小。(即:我的表单需要控制其处理程序,对吗?) 我尝试使用user32.dll库中的SetParent,但它不适用于它(尽管它适用于notepad.exe,因此代码是正确的) 重复:我不想有交互性,我只想把它作为一个小部件放在那里 非常感谢。在c#表单中嵌入第三方AIR程序,c#,air,widget,C#,Air,Widget,我在寻找一种方法,在visual c#form中嵌入一个独立的AIR-singleform AIR程序 我不需要和它有任何交流,我只需要让它“卡”在我身体的某个区域,这样它就会随着我移动,当我移动时,它就会调整大小。(即:我的表单需要控制其处理程序,对吗?) 我尝试使用user32.dll库中的SetParent,但它不适用于它(尽管它适用于notepad.exe,因此代码是正确的) 重复:我不想有交互性,我只想把它作为一个小部件放在那里 非常感谢。 更新:我知道这听起来很奇怪,但是AIR应用程
更新:我知道这听起来很奇怪,但是AIR应用程序是一个实际的.exe文件,而不是swf。(事实上,这让我很困惑,但我很确定它是这样的,因为它说当你第一次安装它时,你需要安装air),我说的是这个应用程序: 更新2:我尝试使用user32.dll SetParent函数,但收到一个错误:无效的\u窗口\u处理程序,尽管该处理程序是通过调用process.MainWindowsHandle检索的,我重复一遍,此代码适用于记事本:
Process notePad = Process.Start("C:\\Windows\\System32\\notepad.exe");
notePad.WaitForInputIdle();
this.appNotePad = notePad.MainWindowHandle;
SetWindowPos(this.appNotePad, -1, 0, 0, panelNotepad.Size.Width, panelNotepad.Height, SWP_NOMOVE);
SetParent(this.appNotePad, panelNotepad.Handle);
SetWindowLong(this.appNotePad, GWL_STYLE, WS_VISIBLE);
也许使用WebBrowsObject是一个解决方案。这是在表单中嵌入Internet Explorer,因此,您可以将html页面设置为默认页面,并显示您的AdobeAIR应用程序
我会检查是否有其他方法可以这样做,但如果您不需要将表单应用程序与AIR one进行通信,这是可以接受的。但所讨论的AIR应用程序是一个实际的.exe文件,而不是swf。(事实上,这让我很困惑,但我很确定它是这样的,因为它说当你第一次安装它时你需要空气),我说的是这个应用:试试这个: