小小飞鹰

     中国人缺少的是步骤,太急。练太极!
随笔 - 144, 文章 - 0, 评论 - 96, 阅读 - 16万
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

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

Posted on   小小飞鹰  阅读(3529)  评论(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 完整文件:上传时报错,有需要的再说 

编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· [AI/GPT/综述] AI Agent的设计模式综述
点击右上角即可分享
微信分享提示