Windows Mobile上怎么調出發短信(彩信,郵件)的界面,并把相應的字段用程序填寫好呢?
?
問題已搞定,分享:
BOOL LanchSystemSmsEditor(const TCHAR* SmsReceiver, const TCHAR* SmsContent, TCHAR*
SmsSubject)
{
TCHAR commandLine[MAX_PATH];
TCHAR szAppName[MAX_PATH];
lstrcpy(szAppName, _T("tmail.exe"));
PROCESS_INFORMATION procInfo;
if( ! CreateProcess(szAppName, _T("-service \"Sms\""), NULL,NULL, FALSE,
CREATE_NEW_CONSOLE, NULL, NULL, NULL, &procInfo) )
{
return FALSE;
}
swprintf(commandLine, _T("mailto:%s?body=%s&subject=%s"), SmsReceiver, SmsContent,
SmsSubject);
if( ! CreateProcess(szAppName, commandLine, NULL,NULL, FALSE, CREATE_NEW_CONSOLE, NULL,
NULL, NULL, &procInfo) )
{
return FALSE;
}
WaitForSingleObject(procInfo.hProcess, INFINITE);
return TRUE;
}
BOOL LanchSymtemEmailEditor(const TCHAR* EmailAddress, const TCHAR* Subject, const TCHAR*
EmailBody)
{
TCHAR commandLine[MAX_PATH];
TCHAR szAppName[MAX_PATH];
lstrcpy(szAppName, _T("tmail.exe"));
PROCESS_INFORMATION procInfo;
if( ! CreateProcess(szAppName, _T("-service \"ActiveSync\""), NULL,NULL, FALSE,
CREATE_NEW_CONSOLE, NULL, NULL, NULL, &procInfo) )
{
return false;
}
swprintf(commandLine, _T("mailto:%s?subject=%s&body=%s"), EmailAddress,Subject,
EmailBody);
if( ! CreateProcess(szAppName, commandLine, NULL,NULL, FALSE, CREATE_NEW_CONSOLE, NULL,
NULL, NULL, &procInfo) )
{
return false;
}
WaitForSingleObject(procInfo.hProcess, INFINITE);
return TRUE;
}
BOOL LanchSystemMMSEditor(const TCHAR* SmsReceiver, const TCHAR* SmsContent, TCHAR*
SmsSubject)
{
TCHAR commandLine[MAX_PATH];
TCHAR szAppName[MAX_PATH];
lstrcpy(szAppName, _T("tmail.exe"));
PROCESS_INFORMATION procInfo;
if( ! CreateProcess(szAppName, _T("-service \"MMS\""), NULL,NULL, FALSE,
CREATE_NEW_CONSOLE, NULL, NULL, NULL, &procInfo) )
{
return FALSE;
}
swprintf(commandLine, _T("mailto:%s?body=%s&subject=%s"), SmsReceiver, SmsContent,
SmsSubject);
if( ! CreateProcess(szAppName, commandLine, NULL,NULL, FALSE, CREATE_NEW_CONSOLE, NULL,
NULL, NULL, &procInfo) )
{
return FALSE;
}
WaitForSingleObject(procInfo.hProcess, INFINITE);
return TRUE;
}
-----------------------------------------------
PPC如何隱藏運行的應用程序
ShowWindow(hWnd, SW_HIDE);
-----------------------------------------------
怎樣從一個Edit框中取出文字,然后再賦值給另一個Edit框
GetWindowText()
SetWindowText()
這兩個函數就可以了
-----------------------------------------------
如何枚舉WM5中的連接
用DMProcessConfigXML可以得到連接設置,包含在CM_GPRSEntries,CM_PPPEntries,CM_VPNEntries中,
返回的每一項的guid指明了這個連接屬于哪一個網絡,
網絡可以用DMProcessConfigXML,通過CM_Networks,也可以用前面提到的ConnMgrEnumDestinations,
直接通過某個特定的連接而不是連接網絡再由CMPlanner選擇某個連接的方法是:用ConnMgrMapConRef函
數由連接的名字得到一個GUID,使用這個GUID連接,這樣就繞過了CMPlanner。
自己主動連接的問題解決了,下面的問題是如何監視連接的狀態(監視其他程序創建連接,斷開連接,連
接上的流量)
------------------------------------------------
取WM5.0電池電量Windows API 問題
Header: Winbase.h.
Link Library: Coredll.lib.
SYSTEM_POWER_STATUS_EX2 state;
GetSystemPowerStatusEx2(&state, sizeof(state), TRUE);
state.ACLineStatus
state.BatteryFlag
--------------------------------------------------
RasSetEntryProperties,RasSetEntryDialParams,創建撥號連接
RasValidateEntryName撥號是否存在!
--------------------------------------------------
通過WM_DBNOTIFICATION消息捕獲所有的電話記錄
開發工具是vs2005的C++,現已實現通過WM_DBNOTIFICATION消息捕獲所有的電話記錄,想通過類似的方法
捕獲SMS收/發消息,來對SMS記錄進行相應的處理。
測試發現,wince5.0的電話記錄和短信記錄都是保存在pim.vol文件中,最新添加的電話記錄可以通過下
面的代碼找到:
case WM_DBNOTIFICATION:
pCalllogNotification = (CENOTIFICATION*)(lParam);
if(pCalllogNotification->uType == DB_NOTIFY_RECORD_CREATED)
{...}
既然短信記錄也是保存在pim.vol文件中,如果能捕獲到SMS短信收/發的消息的話,是不是仍然可以通過
DB_NOTIFY_RECORD_CREATED來定位到相應的SMS短信記錄?
我剛剛接觸WINCE的開發,原來做過一些采用VC6開發(MFC/win32的都有)的項目,感覺WINCE的框架和MFC
比較相似,比較容易上手,最好還是告訴我用VC8實現的方法,謝謝指點。
我知道是電話記錄的話,查詢clog.db數據庫,返回的記錄集PCEPROPVAL的數據結構大致如下:
PCEPROPVAL[1].val.filetime 電話開始時間(GMT時間,中國地區需要+8)
PCEPROPVAL[2].val.filetime 電話結束時間(GMT時間,中國地區需要+8)
PCEPROPVAL[3].val.lVal為電話類型
撥出接是7
撥出不接是5
撥入接是6
撥入不接是4
CEPROPVAL[4].val.lpwstr 為撥出/撥入電話號碼