外部程序读取Powerbuilder的数据窗口数据的方法

本文介绍了如何通过调用Powerbuilder数据窗口的API来实现数据的导出。首先,需要获取数据窗口的句柄,这可以通过工具如Spy++或SpyLite24完成。接着,利用SendMessage函数发送特定消息1305,即可触发数据窗口的导出文件功能。在C#中,可以创建Win32API类并调用其SendMessage方法来实现这一操作。若句柄不正确,操作将失败并提示错误信息。
摘要由CSDN通过智能技术生成

一、原理

    PB数据窗口有一个导出文件的函数,通过调用API向数据窗口传递特定的消息,它就乖乖的弹出一个导出数据文件的窗口了。

 

二、实现步骤

     1、获取数据窗口的句柄。使用spy++工具获取,或者使用工具SpyLite24(http://www.asanscape.com/可以免费下载)

     2、调用让数据窗口导出文件的消息。SendMessage(pbdw_handle, 1305, 0, 0)

 

三、C#代码

 

    public class Win32API
    {
        [DllImport("user32.dll", CharSet=CharSet.Auto)]
        public static extern int SendMessage(IntPtr hWnd, int msg, int wParam, int lParam);
    }

 

调用示例:

           private void button_Click(object sender, EventArgs e)
        {
            try
            {

                IntPtr mwh = (IntPtr)Convert.ToInt32(tbPBDWHandle.Text);
                int result = Win32API.SendMessage(mwh, 1305, 0, 0);

                if (result == 0)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值