#ifndef LFT3LPC_H #define LFT3LPC_H // // LFT3LPC.H Marshalling of Local FileT30 API arguments // // History: // 3/7/94 JosephJ Created. // typedef unsigned long DWORD; // Function IDs enum { eID_FILET30FIRST = 0x1000, eID_FILET30INIT = eID_FILET30FIRST, eID_FILET30LISTEN, eID_FILET30SEND, eID_FILET30ANSWER, eID_FILET30ABORT, eID_FILET30REPORTRECV, eID_FILET30ACKRECV, eID_FILET30STATUS, eID_FILET30SETSTATUSWINDOW, eID_FILET30REREADINIFILE, eID_FILET30DEINIT, eID_FILET30MODEMCLASSES, eID_FILET30REPORTSEND, eID_FILET30POLLREQ, eID_FILET30_INTERNAL_EVENT, eID_FILET30_CALLBACK_PERIODIC, eID_FILET30_CALLBACK_CALLDONE, eID_FILET30LAST = eID_FILET30_CALLBACK_CALLDONE }; // Marshalled data. typedef struct { DWORD dwID; // The eID_* above DWORD dw1,dw2,dw3,dw4,dw5,dw6,dw7; // Function specific (see below) DWORD dwRet; // Return value, if any. } LFT30_MARSHALLED_DATA; // Marshalling info... // FileT30Init // dwID=eID_FILET30INIT // // dw1=dwLineID // dw2=usLineIDType // dw3=dwProfileID (but we enforce this to be 0). // dw4=ATOM(lpszSection) (but we enforce this to be 0). // dw5=uClass // NO! dw3=uClass // NO! dw4=MAKELONG(ATOM(lpszSpoolDir), ATOM(lpszID)) // (deleted by caller on return) // NO!dw5=MAKELONG(ATOM(lpszDefRecipAddress), // ATOM(lpszDefRecipName)) (deleted by caller on return) // dw6=uAutoAnswer // dw7=hwndListen // // dwRet=ret // FileT30Listen // dwID=eID_FILET30LISTEN // // dw1=uLevel // dw2=hwndResult // dw3..7=0 // // dwRet=ret // FileT30Send // dwID=eID_FILET30SEND // // dw1=aPhone // dw2=aFileMG3 // dw3=aFileIFX // dw4=aFileEFX // dw5=aFileDCX // dw6=hwndResult // dw7=0 // // dwRet=0 // FileT30Answer // dwID=eID_FILET30ANSWER // // dw1=fAccept // dw2=fImmediate // dw3=hwndResult // dw4=hCALL (TAPI) -- must be zero for remote calls. // dw5..7=0 // // dwRet=ret // FileT30Abort // dwID=eID_FILET30ABORT // // dw1..7=0 // // dwRet=0 // FileT30ReportRecv // dwID=eID_FILET30REPORTRECV // // dw1=fGetIt // dw2 (OUT) dwPollContext // dw3..7=0 // // dwRet=ret // FileT30AckRecv // dwID=eID_FILET30ACKRECV // // dw1=aRecv // dw2..7=0 // // dwRet=ret // FileT30Status // dwID=eID_FILET30STATUS // // dw1..7=0 // // dwRet=ret // FileT30SetStatusWindow // dwID=eID_FILET30SETSTATUSWINDOW // // dw1=hwndStatus // dw2..7=0 // // dwRet=0 // FileT30ReadIniFile // dwID=eID_FILET30REREADINIFILE // // dw1..7=0 // // dwRet=0 // FileT30DeInit // dwID=eID_FILET30DEINIT // // dw1=fForce // dw2..7=0 // // dwRet=ret // FileT30ModemClasses // dwID=eID_FILET30MODEMCLASSES // // dw1=dwLineID // dw2=dwLineIDType // dw3=dwProfileID // dw4=GlobalAddAtom(lpszKey) (deleted by caller on return). // dw5..7=0 // // dwRet=ret // FileT30ReportSend // dwID = eID_FILET30REPORTSEND // // dw1 = (DWORD) fGetIt // dw2 = (DWORD) dwSend (OUT) -- in milliseconds (not used, really). // dw3 = (DWORD) dwDur (OUT) -- duration in milliseconds. // dw4 = (DWORD) dwFmt (OUT) -- FORMATTYPE units (srvrdll.h). // // dwRet=ret // FileT30PollReq // dwID = eID_FILET30POLLREQ // // dw1 = (DWORD) aPhone // dw2 = (DWORD) PollType // dw3 = (DWORD) aDocName // dw4 = (DWORD) aPassword // dw5 = (DWORD) dwPollContext // dw6 = (DWORD) hwndResult // // dwRet= 0 // This is the name of the semaphore which is used simply to // Detect/register if/that the awfxex app has been loaded. #define szAWFXEX_SEMAPHORE_NAME "awlfx.B1E90.SM" #endif // LFT3LPC_H