C#如何实现让 internet上的 应用程序 在自己设置的 窗体 里面run~~~~
就像劲舞团SF那样 让 应用 程序 到自己的窗体里面 运行!!
就像劲舞团SF那样 让 应用 程序 到自己的窗体里面 运行!!
解决方案 »
- 高手请进linkbutton的下载问题
- C# 中的socket服务监听后 android ios 都能访问吗?
- C# 执行有返回存储过程 谢谢
- C# Windows服务 可否自动调用指定EXE 执行相关操作?
- C#新手求助
- 怎么让函数的返回类型在传参的时候确定
- 未将对象引用设置到对象的实例。
- 如何在Windows Form的datagrid中,根据行中某一个字段的条件,设置行颜色?
- 请问C#生成的EXE应用程序是不是要在有装.Net运行环境的机子上才能运行?
- 网页提交后,中文的参数传不过去
- 有一个字段是“时间”字符型(如2005-8-6),有一个字段是“时间T”时间日期型。我想把所有的“时间”记录放在“时间T”记录里。怎么写SQL语句?
- DataGridView分页的问题,请高手来看看,谢谢
我要的是 要 别人开发好的 程序 运行到 我设置的 窗体上!!!web那个控件好像 只能让网页 嵌入 !!!
用API得到劲舞窗口的HANDLE
再用API将劲舞窗口的父窗口设置成你的程序窗口
大概就这么回来
直接调用WinAPI函数SetParent就可以了.
但是SetParent不能跨进程.
所以...
要实现LZ希望的那样估计得做进程的注入.
进程注入说实话用C#做就有那么点不适合了.
Private Declare Function SetParent Lib "user32" Alias "SetParent" (ByVal hWndChild As IntPtr, ByVal hWndNewParent As IntPtr) As Integer
Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long Private Declare Function EnumWindows Lib "user32.dll" (ByVal lpEnumFunc As EnumWindowsProc, ByVal lParam As Int32) As Int32
Private Declare Function IsWindowVisible Lib "user32.dll" (ByVal hwnd As IntPtr) As Boolean
Private Delegate Function EnumWindowsProc(ByVal hwnd As IntPtr, ByVal lParam As Int32) As Boolean
Private Declare Function GetWindowText Lib "user32.dll" Alias "GetWindowTextA" (ByVal hwnd As IntPtr, ByVal lpString As String, ByVal cch As Int32) As Int32
Private Declare Function GetWindowTextLength Lib "user32.dll" Alias "GetWindowTextLengthA" (ByVal hwnd As IntPtr) As Int32
Private Declare Function GetWindowLong Lib "user32.dll" Alias "GetWindowLongA" (ByVal hwnd As IntPtr, ByVal nIndex As Int32) As Int32
Private Declare Function GetParent Lib "user32.dll" (ByVal intptr As IntPtr) As IntPtr
Private Declare Function GetWindowRect Lib "user32.dll" (ByVal hWnd As IntPtr, ByRef lpRect As RECT) As Boolean