首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> 關於.NET

.NET 手機短信操作:InTheHand SmsMessageFolder 類使用實錄與替代方案探討

     編輯:關於.NET

背景

需讀取/備份/刪除 Windows Mobile 設備短信。微軟官方 API 缺失,第三方 InTheHand 庫(商業版 $49)提供 SmsMessageFolder 類,功能強大但試用版不支援。

核心代碼示例

using InTheHand.WindowsMobile.PocketOutlook;

namespace DumpSMS
{
    class Program
    {
        private const string FILE_NAME = "sms.txt";
        
        static void Main(string[] args)
        {
            if (!File.Exists(FILE_NAME))
            {
                OutlookSession session = new OutlookSession();
                SmsMessageFolder inbox = session.SmsAccount.Inbox;
                
                if (inbox.Count > 0)
                {
                    SmsMessage msg = inbox[0]; // 僅演示第一條
                    if (msg.Body.Length > 0)
                    {
                        File.WriteAllText(FILE_NAME, msg.Body);
                    }
                    msg.Delete(); // 刪除已備份短信
                }
            }
        }
    }
}

InTheHand 庫現狀

  • 商業授權($49/開發者)
  • 試用版鎖定 SmsMessageFolder 等核心類
  • 官網:inthehand.com(現已併入 32feet.NET 專案)

替代方案探討

呼籲

期待微軟在後續 .NET Compact Framework / Windows Phone / UWP 中提供官方短信存取 API,結束「靠第三方商業庫讀短信」的尷尬局面。

總結

InTheHand SmsMessageFolder 是當前 .NET 操作 Windows Mobile 短信最便捷方案,但商業授權門檻較高。專案若預算允許建議購買正版;否則需投入較大精力研究 AT 命令或 P/Invoke 系統 API 替代方案。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved
方案可行性說明
RapiInvoke + MAPI低需 C++ 非託管代碼,簽名複雜
Microsoft.WindowsMobile.PocketOutlook無標準庫僅支援郵件/聯繫人,無短信
AT 命令 (串口)中通用但需設備支援、解析 PDU 格式
Windows Mobile 6.5+ 系統 API高部分新版本開放短信存取,需 P/Invoke
開源 32feet.NET中InTheHand 開源版,功能受限