小小飞鹰

     中国人缺少的是步骤,太急。练太极!
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

嵌入其它程序到winform(C#)中

Posted on 2009-03-19 13:10  小小飞鹰  阅读(3488)  评论(12编辑  收藏  举报

以FoxPro的界面为例。设主程序为Winform.exe,FoxPro编译的程序为vfpTest.exe。

1 在Winform中新建一个窗口VFPSHOW作为所有vfp打开后的父窗口,提供一个单例模式实现窗口唯一打开

VFPSHOW实例

 2 引入系统API,用于把VFP程序打开的表单窗口整合到VFPSHOW页面中,先添加如下引用:
using System.Diagnostics;
using System.Runtime.InteropServices;
using System.Threading;
using System.Reflection;
using System.Management;

WIN API

 3 用Process执行其它程序,vfpTest.exe,传入打开窗口命令,如 Do From myForm

运行进程

 4 把创建的表单移动到VFPSHOW中

VFP进程放入C#窗口中

 5 通过上面4步就完成了VFP嵌入到VFPSHOW界面的效果,MDI窗口需要再加入一些判断:

(1)如果指定的VFP界面已经打开,只激活VFPSHOW界面,不再次打开

已经打开激活窗口

(2)最多允许5个VFP程序

最多允许5个VFP程序

 6 完整文件:上传时报错,有需要的再说