可以自己调用回调函数,传给它合适的参数就可以,这些参数是常量(在有关头文件中定义),你要查头文件的常量定义,然后把常量对应的数值传给回调函数即可。我试过,如waveOutOpen这个Wave API函数又一个参数时回调函数的地址,你定义一个回调函数(可以任意命名),然后把回调函数的名字传过去即可(当然也可以不用回调函数,用窗口来接收消息)。回调函数的前面要声明为CALLBACK or WINAPI。但是,你要使用类,回调函数必须是静态成员函数。

解决方案 »

  1.   

    可以举个例子吗?可以的话写出CODE出来,这样我会更明白的!谢谢!
      

  2.   

    lineInitialize(&hTAPI, hInst, 
    LineCallbackProc,          
                       "TAPIProcess", &dwNumLines)LineCallbackProc是个回调函数地址,在tapi.h(Win98\System\)有以下常量,所以你想激发森么事件(或接什么消息),直接传数进去即可。#define LINECALLSTATE_IDLE                      0x00000001
    #define LINECALLSTATE_OFFERING                  0x00000002
    #define LINECALLSTATE_ACCEPTED                  0x00000004
    #define LINECALLSTATE_DIALTONE                  0x00000008
    #define LINECALLSTATE_DIALING                   0x00000010
    #define LINECALLSTATE_RINGBACK                  0x00000020
    #define LINECALLSTATE_BUSY                      0x00000040
    #define LINECALLSTATE_SPECIALINFO               0x00000080
    #define LINECALLSTATE_CONNECTED void CALLBACK LineCallbackProc(DWORD dwDevice,DWORD dwMessage,
                                     DWORD dwInstance,DWORD dwParam1,
                                     DWORD dwParam2,DWORD dwParam3){
    ... ...}
      

  3.   

    如果我自己给CALLBACK函数写个名例如我说的MyStyle函数,那么系统怎么调用它?什么时候调用它?
      

  4.   

    我的lineCallBack就是我自己写的名,你把它改为MyStyle也可以,参数一定要对。靠,你怎么不给分?这个问题就解决了。不知你为何要自己调它?一般不要自己去调它!os自己会调它!!!