📄 postmessage.c
字号:
#include "AEEModGen.h" // Module interface definitions
#include "AEEAppGen.h" // Applet interface definitions
#include "AEEShell.h" // Shell interface definitions
#include "AEEFile.h" // File interface definitions
#include "AEEFIFO.h"
#include "FIFORead.bid"
#include "FIFOWrite.bid"
#include "PostMessage.h"
#include "AEELogger.h"
#define STR_TEST_FIFO_W "fifo:/~/foobar?mode=w"
#define STR_TEST_FIFO_R "fifo:/~/foobar?mode=r"
#define STR_LARGE_FILE "large.mms"
#define STR_MIDDLE_FILE "middle.mms"
#define STR_LITTLE_FILE "little.mms"
#define STR_DISPLAY_FILE "display.txt"
#define MAX_BUFFER_SIZE 4096
void Mms_StartPostMessage(BrewIFIFO *pBrewInfo)
{
IFileMgr *pIFileMgr;
IFile *pIFile;
FileInfo *pFileInfo;
unsigned char *pucDataBuffer;
IFIFO *pIFIFO;
ILogger *pILog;
int iReturn;
int iFileSize;
pucDataBuffer = (unsigned char*)MALLOC(sizeof(unsigned char) * MAX_BUFFER_SIZE);
pFileInfo = (FileInfo*)MALLOC(sizeof(FileInfo));
/******************************** read from file **********************************************/
iReturn = ISHELL_CreateInstance(pBrewInfo->a.m_pIShell,AEECLSID_FILEMGR_313,&pIFileMgr);
pIFile = IFILEMGR_OpenFile(pIFileMgr,STR_DISPLAY_FILE,_OFM_READ);
iReturn = IFILEMGR_GetInfo(pIFileMgr,STR_DISPLAY_FILE,pFileInfo);
iFileSize = IFILE_Read(pIFile,pucDataBuffer,pFileInfo->dwSize);
iReturn = ISHELL_SendEvent(pBrewInfo->a.m_pIShell,
AEECLSID_FIFOWRITE,
EVT_DISPLAY,
(uint16)iFileSize,
(uint32)pucDataBuffer);
/********************************* write to fifo **********************************************/
iReturn = ISHELL_CreateInstance(pBrewInfo->a.m_pIShell,AEECLSID_FIFO,&pIFIFO);
iReturn = IFIFO_Open(pIFIFO,STR_TEST_FIFO_W);
iReturn = IFIFO_Write(pIFIFO,pucDataBuffer,pFileInfo->dwSize);
iReturn = ISHELL_StartApplet(pBrewInfo->a.m_pIShell,AEECLSID_FIFOREAD);
// iReturn = ISHELL_StartBackgroundApplet(pBrewInfo->a.m_pIShell,AEECLSID_FIFOREAD,NULL);
iReturn = ISHELL_PostEvent(pBrewInfo->a.m_pIShell,AEECLSID_FIFOREAD,EVT_READ_FIFO,0,0);
iReturn = IFIFO_Close(pIFIFO);
ISHELL_CreateInstance(pBrewInfo->a.m_pIShell,AEECLSID_LOGGER_FILE,&pILog);
iReturn = LOG_TEXT(pILog,2,"fasfads");
return;
}
void Mms_StartGetMessage(BrewIFIFO *pBrewInfo)
{
IFIFO *pIFIFO;
int iReturn;
unsigned char *pucDataBuffer;
ILogger *pILog;
pucDataBuffer = (unsigned char*)MALLOC(sizeof(unsigned char) * MAX_BUFFER_SIZE);
iReturn = ISHELL_CreateInstance(pBrewInfo->a.m_pIShell,AEECLSID_FIFO,&pIFIFO);
iReturn = IFIFO_Open(pIFIFO,STR_TEST_FIFO_R);
iReturn = IFIFO_Read(pIFIFO,pucDataBuffer,MAX_BUFFER_SIZE);
ISHELL_CreateInstance(pBrewInfo->a.m_pIShell,AEECLSID_LOGGER_FILE,&pILog);
LOG_TEXT(pILog,2,"fasfads");
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -