当前位置:首页 » 编程博文
开发技术指南» 文章正文
    引言: 在对数据库的操作时,有时要用一个子线程来进行后台的数据操作。
 

 

    摘要: 数据库访问是软件开发过程中经常用到的,ado方法访问数据库是现在windows平台开发软件经常用到的方法,但是在ado组件中,使用com调用的时候,经常会出现各种异常,异常处理在开发过程中如果处理不当,经常会导致程序无法正常工作甚至崩溃。本人在开发软件过程中,对ado方法进行了封装,把com异常吸收在类的内部,这样引用的时候就不必考虑异常处理,使开发过程简单化。本次封装,没有支持全部的方法,只是......
    摘要:3. dbconnection.h#pragma once #include <comutil.h>#pragma comment(lib,"comsupp.lib") class cdbconnectionimpl ;class cdbrecordset ; class afx_ext_class cdbconnection{ friend class cd......


Delphi7 从子线程中发送消息到主线程触发事件执行

在对数据库的操作时,有时要用一个子线程来进行后台的数据操作.比如说数据备份,转档什么的.在主窗口还能同是进行其它操作.而有时后台每处理一个数据文件,要向主窗口发送消息,让主窗口实时显示处理进度在窗口上(可视),同时进行日志处理等.我用的是下面的方法:

【程序编程相关:项目后期要区别对待客户的新增需求

【推荐阅读:Three view points of

[1]用到的api函数: 【扩展信息:The UNIX Shell

registerwindowsmessage

----------------------

函数功能:该函数定义一个新的窗口消息,该消息确保在系统中是唯一的.返回的消息值可在调用函数sendmessage或postmessage时使用.

function registerwindowmessage(lpstring: pchar): uint; stdcall;

sendnotifymessage

----------------------

函数功能:该函数将指定的消息发送到一个窗口.

      如果该窗口是由调用线程创建的;此函数为该窗口调用窗口程序,

      并等待窗口程序处理完消息后再返回.

      如果该窗口是由不同的线程创建的,此函数将消息传给该窗口程序,

      并立即返回,不等待窗口程序处理完消息.

 sendnotifymessage(hwnd hwnd,uint msg,wparam wparam,lparam iparam);

broadcastsystemmessage

----------------------

函数功能:该函数发送消息给指定的接受者.

      接受者可以是一个应用程序.安装驱动器.网络驱动器.系统级设备驱动器

      或这些系统组件的组合.

[2]过程:

 type

  tform1 = class(tform)

        ...............

        ...............

  private

    msg: cardinal;

  protected

    procedure wndproc(var message: tmessage); override;

  public


...   下一页
    摘要:5. dbrecordsetimpl.h#pragma once typedef _recordsetptr cadorecordsetptr; class cdbrecordsetimpl{ //构造函数和析构函数public: cdbrecordsetimpl(void); virtual ~cdbrecordsetimpl(void); //copy constructor cdbr......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE