我们有一个用C语言编写的旧的Windows 32位应用程序可以执行一些操作,并将结果显示为类似于文本框的内容.我被要求在C#中编写一个应用程序,它从旧应用程序中读取数据,然后进一步处理数据.问题是如何阅读旧应用程序中...

我们有一个用C语言编写的旧的Windows 32位应用程序可以执行一些操作,并将结果显示为类似于文本框的内容.
我被要求在C#中编写一个应用程序,它从旧应用程序中读取数据,然后进一步处理数据.
问题是如何阅读旧应用程序中的文本框?
有人告诉我,我可以使用Windows API获取应用程序的“句柄”并逐步执行控件,然后读取每个数据!这是真的,如果是这样,我将如何从C#中做到这一点?
这是一个.Net 4 Windows窗体应用程序.
非常感谢
解决方法:
您可能不得不使用一些Interop调用来完成此操作,特别是使用FindWindow/FindWindowEx和SendMessage& WM_GETTEXT/WM_GETTEXTLENGTH.
这是关于这个主题的article(在c中,但是相同的概念只需要移植到使用P/Invoke),它有点过时但我认为应该与你的情况非常相关.
本文标题为:使用C#Windows窗体应用程序中的Windows API读取非C#Apps文本框


基础教程推荐
- Unity 如何获取鼠标停留位置下的物体 2023-04-10
- 实例详解C#实现http不同方法的请求 2022-12-26
- C# 解析XML和反序列化的示例 2023-04-14
- C#中的Linq to JSON操作详解 2023-06-08
- C#中 Json 序列化去掉null值的方法 2022-11-18
- C#获取指定目录下某种格式文件集并备份到指定文件夹 2023-05-30
- c# – USING块在网站与Windows窗体中的行为不同 2023-09-20
- C#调用摄像头实现拍照功能的示例代码 2023-03-09
- Unity shader实现高斯模糊效果 2023-01-16
- C#通过标签软件Bartender的ZPL命令打印条码 2023-05-16