想写一个在后台监视短信的exe程序,
MyStart.cpp
#include <e32base.h>
#include <e32std.h>
#include <e32cons.h> // Console
#include "MyObserver.h "
_LIT(KTextConsoleTitle, "Console ");
_LIT(KTextFailed, " failed, leave code = %d ");
_LIT(KTextPressAnyKey, " [press any key]\n ");
LOCAL_D CConsoleBase* console; // write all messages to this
LOCAL_C void DoStartL()
{
// Create active scheduler (to run active objects)
CActiveScheduler* scheduler = new (ELeave) CActiveScheduler();
CleanupStack::PushL(scheduler);
CActiveScheduler::Install(scheduler);
CMyObserver* observer = CMyObserver::NewL(*console);
observer-> Load();
//CActiveScheduler::Start();
// Delete active scheduler
CleanupStack::PopAndDestroy(scheduler);
}
GLDEF_C TInt Start()
{
// Create cleanup stack
__UHEAP_MARK;
CTrapCleanup* cleanup = CTrapCleanup::New();
// Create output console
TRAPD(createError, console = Console::NewL(KTextConsoleTitle, TSize(KConsFullScreen,KConsFullScreen)));
if (createError)
return createError;
// Run application code inside TRAP harness, wait keypress when terminated
TRAPD(mainError, DoStartL());
if (mainError)
console-> Printf(KTextFailed, mainError);
console-> Printf(KTextPressAnyKey);
console-> Getch();
delete console;
delete cleanup;
__UHEAP_MARKEND;
return KErrNone;
}
// Exported Functions
#ifdef __WINS__
EXPORT_C TInt WinsMain(TAny* /*aParam*/)
{
return Start();
}
#else
GLDEF_C TInt E32Main()
{
return Start();
}
#endif
#ifdef __WINS__
TInt E32Dll(TDllReason /*aReason*/)
{