分类目录
文章索引模板
20090104 nokia sms tp-pid - 八月 18, 2009 by yippee

YouTube – S60 Curse of Silence Demo
http://www.youtube.com/watch?v=GuOGn8ATa9U&eurl=http://www.unwiredview.com/2008/12/30/curse-of-silence-exploit-prevents-nokia-s60-phones-from-receiving-smsmms/&feature=player_embedded

利用手机模块实现短消息(二)
http://soft6.com/tech/6/61841.html
⑼00—协议标识TP-PID(TP-Protocol-Identifier)
BIT No.  7 6 5 4 3 2 1 0
Bit No.7与Bit No.6: 00—如下面定义的分配Bit No.0—Bit No.5;01—参见GSM03.40协议标识完全定义;10—预留;11—为服务中心(SC)特殊用途分配Bit No.0—Bit No.5。
一般将这两位置为00。
Bit No.5:0—不使用远程网络,只是短消息设备之间的协议;1—使用远程网络。
Bit No.0—Bits No.4:00000—隐含;00001—电传;00010—group 3 telefax;00100—语音;00101—欧洲无线信息系统(ERMES);00110—国内系统;10001—任何基于X.400的公用信息处理系统;10010—Email。

转载,关于s60短信漏洞(来自cnpda) – 诺基亚E51论坛 – 塞班智能手机论坛-Symbian系统智能手机中文论坛
http://bbs.dospy.com/thread-2615412-1-1.html
3GPP TS 23.040 specifies a method for sending emails via SMS in
section 3.8 ("SMS and Internet Electronic Mail interworking"). In its
most basic form, such a SMS message starts with the from- (MT-SMS) or
to-email-address (MO-SMS), followed by a space character, and then the
message body. The TP-Procotol-Identifier of the SMS message has to be
set to "Internet Electronic Mail" (value: 50 / 0×32).

It is not specified how such a message should be displayed when
received by the phone. Before S60 2.6, Series60 devices displayed such
messages exactly as they were sent. Starting with S60 2.6, when the
part of the message that should contain the from-address looks
anything like an email address (i.e. it contains an "@" somewhere),
this address is then displayed as the message sender instead of the
usually shown TP-Originating-Address.

If this email address is longer than 32 characters, Series60 2.6, 2.8,
3.0 and 3.1 devices fail to display the message or give any indication
on the user interface that such a message has been received. They do,
however, signal to the SMSC that they received the message by sending
an RP-ACK.

Devices running S60 2.6 or 3.0 will not be able to receive any other
SMS message after that. The user interface does not give any
indication of this situation. The only action to remedy this situation
seems to be a Factory Reset of the device (by entering "*#7370#").

Devices running S60 2.8 or 3.1 react a little different: They do not
lock up until they received at least 11 SMS-email messages with an
email address that is longer than 32 characters. The device will not
be able to receive any other SMS message after that – upon receiving
the next message, the phone will just display a warning that there is
not enough memory to receive further messages and that data should be
deleted first. This message is even displayed on an otherwise
completely "empty" device.

After switching the phone off and on again, it has limited capability
for receiving SMS messages again: If it receives a SMS message that is
split up into several parts (3GPP TS 23.040, 9.2.3.24.1 Concatenated
Short Messages) it is only able to receive the first part and will
display the "not enough memory" warning again. After powercycling the
device again, it can then receive the second part. If there is a third
part, it has to be powercycled again, and so on.

Also, an attacker now just needs to send one more "Curse Of Silence"
message to lock the phone up again. By always sending yet another one
as soon as the status report for delivery of the previous message is
received, the attacker could completely prevent a target from
receiving any other SMS/MMS messages.

Only Factory Resetting the device will restore its full message
receiving capabilities. Note that, if a backup is made using Nokia
PC-Suite *after* being attacked, the blocking messages are also
backuped and will be sent to the device again when restoring the
backup after the Factory Reset.

Note that not being able to receive SMS messages also means not being
able to receive MMS messages, since they are signalled by sending an
SMS message to the device.

"Curse Of Silence" messages can be generated with any phone or
cellular modem that supports 3GPP TS 27.005 AT commands and with most
Nokia phones also directly from the user interface. For example, on
S60 devices, when in the message editor, the type of the message can
be switched to "E-mail" under "Options" -> "Sending options" ->
"Message sent as". The 6310i conveniently offers a "Write email" menu
entry in the messaging menu.

The simplest form of content for a Curse Of Silence would be something
like "123456789@123456789.1234567890123 " (the digits are used only to
illustrate the length of the "email address" of more than 32
characters). Note the space at the end of the message!

标签:

20090421 sms pdu-type - 八月 18, 2009 by yippee

20090421 sms pdu-type

http://blog.chinaunix.net/u/1807/showart_82191.html
   Bati\’s Blog
 记录工作、生活中的点滴精彩!
sms pdu 格式,找到了在pdu串中设置短信回执的方法。就是在pdu-type这个8位位组一般都设置为11:包含TP-MTI(2bit),TP- RD(1bit),TP-VPF(2bit),TP-RP(1bit),TP-UDHI(1bit),TP-SRR(1bit)
二进制表示形式:0 0 0 10 0 01
TP-MTI:01
 TP-Message-Type-Indicator(消息类型指示符)
Bit1,0:01 指示为SMS-SUBMIT类型
TP-RD:0
TP-Reject-Duplicates(是否拒绝相同重复消息)
Bit2:0  指示短消息中心接受未转发的具有相同TP-MR的消息。
TP-VPF:10
 TP-Validity-Period-Format(有效期格式)
 Bit4,3:10 指示使用相对格式。
TP-SRR:0
 TP-Status-Report-Request
 Bit5:0  指示不使用状态报告。
TP-UDHI:0
 TP-User-Data-Header-Indicator(用户数据头标示)
 Bit6:0  指示这是一个SMS消息,没有用户数据头。EMS消息需要设置。
TP-RP:0
 TP-Reply-Path(回复路径)
 Bit7:0  指示没有设置回复路径。

只需要将bit5设置成1即可接收回执 即pdu-type为31
11点左右gsm modem到手马上接上电脑开始测试,结果令我哭啊!!!!!发了n条没有收到一个回执。只好再查资料,同时打开SMS with the SMS PDU-mode以及hesicong大大那里找来的开发文档开始啃,哈哈!皇天不负有心人啊!终于找到个和短信接收相关的at指令 AT+CNMI=<mode>,<mt>,<bm>,<ds>,<brf>
参数:
 mode:
 0——缓存在终端
 1——直接发送到TE
mt:
 0——接收到新的SMS不返回事件
 1——如果接收到的SMS存储在na ,则返回
    +CMTI:<mem>,<index>
 2——除了Class2 SMS,新的SMS直接发送到终端,返回:
   +CMT:<length><CR><LF><PDU>
 3——Class3 SMS使用mt=2的方法返回,其他类型的使用mt=1的方法返回。
bm:
 0——小区广播不通知
 2——新的小区广播通知,返回
    +CBM:<length><CR><LF><pdu>
 3——Class3格式的小区广播通知,使用bm=2格式
ds:
 0——状态报告不通知
 1——新的状态报告通知,返回:
   +CDS:<length><CR><LF><pdu>
 2——如果新的状态报告存储到ME,则返回:
  +CDSI:<mem>,<index>
brf:
 1——始终为1

再次打开超级终端输入
at+cnmi?
+CNMI:0,1,0,0,0
果然是这里的问题了
按照前面mode定义
重新设置cnmi
at+cnmi=1,1,0,1,1
OK
再发送一条短信返回OK后大概5s终端返回了
+CDS: 26
0006320D91683161721356F6506071415354005060714153640000
第一段000632意义不是很明白(哪位大大知道麻烦告诉一声◎◎)
0D接收方号码长度
683161721356F6接收方号码
50607141535400信息到达短信中心的时间(我猜的)
5060714153640000信息发送到接收方的时间(也是猜的)
后续要做的事就是在接到回执的时候把手机号码解析出来,就可以进行统计分析了
目前的问题就解决的差不多了,不过估计编码的时候还是会产生不少的问题,到时候

标签:
20090430 PDU SMS - 八月 18, 2009 by yippee

标签:
20070608 YippeeSMSBK mpx220 短信 备份  SMARTPHONE - 四月 1, 2008 by yippee

20070608 YippeeSMSBK mpx220 短信 备份  SMARTPHONE

http://www.yippeesoft.com

YippeeSMSBK mpx220 短信 备份 SMARTPHONE

短信备份的,用过几个人家的,有的是增量备份,每次生成单独的文件,有的是无法解析发件箱里面的收件人,全部显示成发件人

C# VC2005 SQLITE

完成功能

解析 收件人/发件人 时间 内容

读取收件箱 发件箱

收取之后删除短信SMS

存储于SQLITE

退出时备份

分邮箱浏览

按时间浏览

首先是 WINCE MAPI的问题

然后是VC2005作界面的问题

最后是C# SQLITE的问题

断断续续作了快一个星期

效率实在有些差了。

c#的效率的确比VC要差很多

以前用VC查询一个几十万条记录的SQLITE,速度明显飞快

而c#第一次打开数据库就明显延时严重

标签:, , , , , , ,
20070603 vs2005 smartphone sms 资料 CE MAPI - 二月 5, 2008 by yippee

20070603 vs2005 smartphone sms 资料 CE MAPI
http://www.yippeesoft.com

http://blog.csdn.net/yzx0023/archive/2005/08/11/451643.aspx
原创)CE MAPI实例讲解 — 如何获取Inbox里的所有消息(二)

http://www.outlookexchange.com/articles/KonstantinZheludev/zheludev_am4.asp
How to create MS Exchange profiles in MS Outlook with MAPI

http://www.codeproject.com/listctrl/Address_book_in_MAPI.asp
Large Address book in MAPI

http://www.codeproject.com/csharp/remote_mail.asp
Remote Mail (.NET Remoting + MAPI)

http://www.ioicn.com.cn/bbs/archiver/tid-120896.html
【原创】如何在手机通话中实现声音提示(原代码)

http://caotingna.com/item/ruguo-jiehuo-duanxin__129965.aspx
在PocketPC2003或smartphone2003里,如何去截获一条短信?一定要在系统里的那短信程序收到之前截获

http://forums.microsoft.com/MSDN-CHT/ShowPost.aspx?PostID=390992&SiteID=14
微軟技術社群討論區»Visual Studio»Visual Studio一般討論區(General)»windows address book(WAB) 請問新增連絡人的流程有哪些?    

http://www.stubbs.cn/dev/6305/5222931.htm
无聊客请进,关于接收短信,分少,多包含

http://www.wrconsulting.com/Software/Publications/Exchange/Folders/Client.htm
Writing Simple Exchange Server Client

http://www.codeproject.com/cs/internet/simplemapidotnet.asp?df=100&forumid=3555&exp=0&select=1903020
Simple MAPI.NET

http://www.codeproject.com/ce/SMS_CEMPI.asp
Sending an SMS using CEMAPI

http://bbs.pdafans.com/viewthread.php?tid=246502
如何通过CEMAPI读取并正确显示EMAIL的内容?

http://msdn2.microsoft.com/en-us/library/ms838293.aspx
Introduction to MAPI in Pocket PC 2002 C++ Applications, Part 3

http://www.winbile.net/Detail.aspx?D=260,1113999,771,120
使用CEMAPI发送一封SMS

http://blogs.msdn.com/nazimms/archive/2005/09/08/462495.aspx
Sending and receiving SMS using NETCF

http://www.gotdotnet.com/Community/UserSamples/Details.aspx?SampleGuid=5477acd6-d58d-41d0-9390-ed0daa1f9dda
 GotDotNet User Sample: Sending and receiving SMS messages using NETCF

 http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnnetcomp/html/ReceivingSMSMessages.asp
 Receiving SMS Messages Inside a Managed Application

 http://www.microsoft.com/china/msdn/library/langtool/vsdotnet/ReceivSMSMessages.mspx?mfr=true
 在托管应用程序中接收 SMS 消息

 http://www.microsoft.com/downloads/details.aspx?familyid=98ccf3d4-db7c-4a7d-a323-53bbdbbe0420&displaylang=en
 .NET Compact Framework Sample: Receiving SMS Messages

 http://delphi.ktop.com.tw/board.php?fid=920&tid=24722
 MAPI example code for getting folders and messages

 http://www.wischik.com/lu/Programmer/MapiUtils
 MAPI example code for getting folders and messages

 http://www.cj.idv.tw/show.asp?id=132&totable=1
 bool CMAPIView::msgstore()
&leftsign;
 IMAPISession *pIMapi = NULL;
 if(MAPIInitialize(NULL) != S_OK)
  return false;
 if(MAPILogonEx(0,NULL,NULL,0,&pIMapi) !=S_OK)
 &leftsign;
  MAPIUninitialize();
  return false;
 &rightsign;
 IMAPITable *pIMapiStoresTable = NULL;
 long hr = pIMapi->GetMsgStoresTable(0,&pIMapiStoresTable);
 if (FAILED(hr))
 &leftsign;
  MessageBox(TEXT("GetMsgStoresTable"), TEXT("Installed Transports"), MB_OK);
  pIMapi->Logoff(0,0,0);
  pIMapi->Release();
  pIMapi = NULL;
  MAPIUninitialize();
  return false;
 &rightsign;
 IMsgStore *pPop3Store = NULL;
 SRowSet * pRowSet = NULL;
 SizedSPropTagArray(2,tblColumns) = &leftsign;2,&leftsign;PR_DISPLAY_NAME,PR_ENTRYID&rightsign;&rightsign;;
 pIMapiStoresTable->SetColumns((LPSPropTagArray)&tblColumns,0);
 hr = pIMapiStoresTable->QueryRows(1,0,&pRowSet);
 if (_tcscmp(TEXT("POP3"), pRowSet->aRow[0].lpProps[0].value.lpszW) ==0)
 &leftsign;
  ENTRYID *pEntry = (ENTRYID *) pRowSet->aRow[0].lpProps[1].value.bin.lpb;
  ULONG ulStoreBytes = pRowSet->aRow[0].lpProps[1].value.bin.cb;
  pIMapi ->OpenMsgStore(NULL,ulStoreBytes,pEntry,NULL,NULL,&pPop3Store);
  FreeProws(pRowSet);
 &rightsign;
 FreeProws(pRowSet);
 pIMapiStoresTable->Release();
 if (!pPop3Store)
 &leftsign;
  pIMapi->Logoff(0,0,0);
  pIMapi->Release();
  pIMapi = NULL;
  MAPIUninitialize();
  return false;
 &rightsign;
 //open up the pop3 folder
 LPSPropvalue rgprops = NULL;
 LPSPropvalue lppPropArray = NULL;
 ULONG cvalues = 0;
 IMAPIFolder *pPOPDraftsFolder = NULL;
 SizedSPropTagArray(2,rgTags) = &leftsign;2,&leftsign;PR_CE_IPM_DRAFTS_ENTRYID,PR_OBJECT_TYPE&rightsign;&rightsign;;
 hr = pPop3Store->GetProps((LPSPropTagArray)&rgTags,MAPI_UNICODE, &cvalues, &rgprops);
 hr = pPop3Store->OpenEntry(rgprops[0].value.bin.cb,(LPENTRYID)rgprops[0].value.bin.lpb,NULL,MAPI_MODIFY,NULL,(LPUNKNOWN*)&pPOPDraftsFolder);
 IMessage *pNewMessage = NULL;
 hr = pPOPDraftsFolder->CreateMessage(NULL,0,&pNewMessage);
 SPropvalue sMsgProps[2];
 TCHAR tchSubject[128]= TEXT("\\0");
 memset(&sMsgProps, 0, sizeof(sMsgProps));
 wsprintf(tchSubject, TEXT("Test Message Subject"));
 sMsgProps[0].ulPropTag = PR_MESSAGE_FLAGS;
 sMsgProps[0].value.ul = MSGFLAG_UNSENT;
 sMsgProps[1].ulPropTag = PR_SUBJECT;
 sMsgProps[1].value.lpszW = tchSubject;
 hr = pNewMessage->SetProps(2,sMsgProps,NULL);
 if (FAILED(hr))
 &leftsign;
  pNewMessage->Release();
  return false;
 &rightsign;
 IStream *pStream = NULL;
 TCHAR tchBody[255] = TEXT("\\0");
 wsprintf(tchBody,TEXT("This is a test of the message body"));
 hr = pNewMessage->OpenProperty(PR_BODY, NULL , 0, MAPI_CREATE&line;MAPI_MODIFY,(IUnknown **)&pStream);
 if (FAILED(hr))
 &leftsign;
  pNewMessage->Release();
  return false;
 &rightsign;
 DWORD dwLength = (lstrlen(tchBody)+1)*sizeof(TCHAR);
 pStream->Write(tchBody,dwLength, NULL);
 pStream->Release();
 SizedADRLIST(1, msgAdrList);
 SPropvalue rgMsgProps[3];
 memset(&rgMsgProps, 0, sizeof(rgMsgProps));
 rgMsgProps[0].ulPropTag = PR_ADDRTYPE;
 rgMsgProps[0].value.lpszW = TEXT("SMTP");
 rgMsgProps[1].ulPropTag = PR_EMAIL_ADDRESS;
 rgMsgProps[1].value.lpszW = TEXT("someone@somewhere");
 rgMsgProps[2].ulPropTag = PR_RECIPIENT_TYPE;
 rgMsgProps[2].value.ul = MAPI_TO;
 msgAdrList.cEntries = 1;
 msgAdrList.aEntries->cvalues = 3;
 msgAdrList.aEntries->rgPropVals = rgMsgProps;
 hr = pNewMessage->ModifyRecipients(MODRECIP_ADD,(LPADRLIST)&msgAdrList);
 MAPIFreeBuffer((LPADRLIST)&msgAdrList);
 hr = pNewMessage->SubmitMessage(0);
 if (FAILED(hr))
  MessageBox(TEXT("SubmitMessage Failed"), TEXT("Installed Transports"), MB_OK);
 pNewMessage->Release();
pPOPDraftsFolder->Release();
 pPop3Store->Release();
 return true;
&rightsign;

我也已经能够打开Inbox了,还能计算出里面SMS的数量,但还是无法找到SMS的信息….不知道为什么总是返回""(空字符串)!

代码如下:
HRESULT hr;
ICEMAPISession * pSession = NULL;
IMAPITable * pTable = NULL;
SRowSet * pSRowSet = NULL;
IMsgStore * pStore = NULL;
if (MAPILogonEx(0,NULL,NULL,0,(LPMAPISESSION *)&pSession) != S_OK)
&leftsign;
MessageBox(hwnd,_T("Failed to logon"),_T("Error"),0);
&rightsign;else
&leftsign;
//SizedSPropTagArray(2, PropTagArr) = &leftsign;2,&leftsign;PR_DISPLAY_NAME,PR_ENTRYID&rightsign;&rightsign;;
SizedSPropTagArray(1, PropTagArr) = &leftsign;1,&leftsign;PR_CE_IPM_INBOX_ENTRYID&rightsign;;
hr = pSession->GetMsgStoresTable(MAPI_UNICODE,&pTable);
hr = pTable->SetColumns((LPSPropTagArray)&PropTagArr, 0);
if (!hr)
&leftsign;
do
&leftsign;
hr = pTable->QueryRows(1,0,&pSRowSet);
LPSPropValue lpProp;
lpProp = &pSRowSet->aRow[0].lpProps[0];

if(_tcscmp( lpProp->Value.LPSZ, _T("SMS") ) == 0 )
&leftsign; break;

&rightsign;
FreeProws(pRows);
pSRowSet = NULL;
&rightsign;while (!hr);

hr = pTable->QueryRows(1,0,&pSRowSet);
hr = pSession->OpenMsgStore (NULL,
pSRowSet->aRow[0].lpProps[0].Value.bin.cb,
(ENTRYID *) pSRowSet->aRow[0].lpProps[0].Value.
bin.lpb, NULL, 0, &pStore);

IMessage * lpMessage;
ULONG pcount =0;
SPropValue *rgprops = NULL;

hr = pStore->OpenEntry(pSRowSet->aRow[0].lpProps[0].Value.bin.cb, (LPENTRYID)pSRowSet->aRow[0].lpProps[0].Value.bin.lpb, NULL, 0, NULL, (LPUNKNOWN FAR *)&lpMessage);
SizedSPropTagArray(1,rgTags) = &leftsign;1,PR_SUBJECT&rightsign;;
hr = lpMessage->GetProps((LPSPropTagArray)&rgTags, MAPI_UNICODE, &pcount, &rgprops);
// s = rgprops->Value.lpszW;

pTable->Release();
&rightsign;
&rightsign;

为什么我在 pMsgStore->OpenEntry(rgprops[0].Value.bin.cb, (LPENTRYID)rgprops[0].Value.bin.lpb, NULL, MAPI_MODIFY, NULL, (LPUNKNOWN*)pFolder );
的时候,得到HRESULT是E_INVALIDARG?

标签:, , , , , ,
0929 smartphone 2003 vs2005 sms 开发资料 - 三月 10, 2007 by yippee

0929 smartphone 2003 vs2005 sms 开发资料

[hide]最近看到人家有需求,想做一个短消息处理程序,对于指定人发送的短消息可以在TMAIL.EXE之前抢先接收保存。
找了找资料,最近手头不空,[/hide]

如何能从smartphone或PPC中的Inbox里面读取出SMS
Simmgr.lib  Simmgr.h 没记错的话是这样的,你在C#中只能用Invoke方法来实现
我在微软的网页上看到是利用IMailRuleClient的方法来实现

在PocketPC2003或smartphone2003里,如何去截获一条短信?一定要在系统里的那短信程序收到之前截获.POCKET PC 2003 SDK里有一个例子(C:\\Program Files\\Windows CE Tools\\wce420\\POCKET PC 2003\\Samples\\Win32\\Mapirule

(原创)CE MAPI实例讲解 — 如何获取Inbox里的所有消息(一)
无聊客的专栏 寻找逝去的岁月
如何获取tmail(就是我们熟称的收件箱程序)下各个Message Box下的消息

Receiving SMS Messages Inside a Managed Application Maarten Struys PTS Software
Summary: In this article we describe a way to receive SMS messages in a managed application without the SMS message appearing in the Inbox and without showing a bubble notification when the SMS message arrives. The sample code will run on a Pocket PC 2003 Phone Edition device. With small modifications, mainly in the MMI part, it should run on a Smartphone 2003 as well.

在托管应用程序内部接收SMS消息
2005.11.09  来自:MSDN开发精选  Maarten Struys
尽管.NET Compact Framework版本1.0提供了非常强大的功能,但是它对电话功能的支持却很少。使用P/Invoke,可以相当容易地访问Phone API和SIM API,如文章“Accessing Phone APIs from the Microsoft .NET Compact Framework”中所描述的那样。对于Windows Mobile 2003软件来说,如果SMS消息没有出现在收件箱中,则没有直接的API可用来立即处理在托管应用程序内部接收的SMS消息。SDK文档引用IMailRuleClient接口来处理应用程序内的传入消息。MAPI规则客户端(MAPI Rule Client)是可以实现IMailRuleClient接口的COM对象。注册时,收件箱应用程序将会加载MAPI规则客户端。注册后,传入的SMS消息会传递给MAPI规则客户端,由它决定如何处理该传入消息。
    Smartphone 2003 SDK和Pocket PC 2003 SDK中附带了很多代码示例。其中的一个示例实现了简单的邮件规则客户端。它位于Pocket PC 2003 SDK的子文件夹“\\POCKET PC 2003\\Samples\\Win32\\Mapirule”中。对设备进行注册后,该示例MAPI规则客户端会接收所有的SMS消息,并将它们传递给收件箱(包含字符串“zzz”的消息除外)。这些消息由MAPI规则客户端本身进行处理,以便在MessageBox中显示消息和发件人的电话号码,然后删除SMS消息

关于在PPC上接收短信的奇怪问题
在PPC上发送接收短信应该是很简单的问题,因为微软提供了Sim.lib库……
主题的问题解决了,主要是mobile自己的一个名为tmail.exe的线程,占用了接收短信的句柄。所以我们已经无法打开了……
现在又有另一个问题,对于收普通的短信没有问题。但我的目的是收PUSH的消息。不

在托管应用程序中接收 SMS 消息发布日期: 11/30/2004 &line; 更新日期: 11/30/2004
Maarten StruysPTS Software
适用于:Microsoft® .NET Compact Framework 1.0Microsoft® Visual Studio® .NET 2003
下载接收 SMS 示例。
摘要:在本文中,我们说明了一种在托管应用程序中接收 SMS 消息的方法,而 SMS 消息不会出现在收件箱中并且当 SMS 消息到达时不显示弹出通知。示例代码将运行在 Pocket PC 2003 Phone Edition 设备上。只要稍加修改(主要在 MMI 部分中),它应该也可以运行在 Smartphone 2003 中。
What Others Are Downloading
Others who downloaded .NET Compact Framework Sample: Receiving SMS Messages also downloaded:
.NET Compact Framework Sample: Send SMS
.NET Compact Framework Sample: Phone API
.NET Compact Framework Sample: Serial Communications
2556 Course Sample: Learn to Build Mobile Applications with Visual Studio and the .NET Compact Framework
.NET Compact Framework 2.0 Service Pack 1 Redistributable

IMailRuleClient is a COM interface – you cannot implement it in .NETCF, you must use eVC++ to create a dll to intercept SMS messages. You can use a number of techniques to pass this data to a managed program, e.g. use a messagewindow in your .NETCF application and have the dll broadcast a specific message when the SMS arrives.

Accessing Phone APIs from the Microsoft .NET Compact Framework 
Derek Mitchell DEVBUZZ.COM, Inc. April 2003
Applies to:    Microsoft® .NET Compact Framework 1.0    Microsoft Visual Studio® .NET 2003
Summary: Learn how to access Phone APIs from your .NET Compact Framework-based application.

VS2005 RC中,开发本地代码的Smartphone程序,用设备进行debug的问题
当用VS2005开发程序时,如果这样做会出现错误:
用C++开发基于Smartphone的本地代码程序
试图在实际设备上进行调试(直接Ctrl+F5运行没有问题)
出现错误为:
无法进行调试,VS2005报告错误。
解决办法:
把C:\\Program Files\\Microsoft Visual Studio 8\\SmartDevices\\SDK\\SDKTools\\sdkcerts.cab拷贝到设备上,运行该文件。然后重新启动设备。

标签:, , , , , ,
microsoft sms api - 七月 22, 2005 by yippee

呵呵,简直是太搞笑了,我还真的以为是SMS SMS(short message service) 手机短消息短信息,呵呵,原来不是的 :)

今天要用 :

GetPrivateProfileString
The GetPrivateProfileString function retrieves a string from the specified section in an initialization file. This function is provided for compatibility with 16-bit Windows-based applications. Win32-based applications should store initialization information in the registry.

顺便在MSDN上搜索了一把,第一个就是一个PDF.CPP文件:

// ==================================================================== // //  File: pdf.cpp // //  Copyright (C) 1996 Microsoft Corp. // //  Author: //      Jonathan Shuval     Microsoft Corp. // //  This program illustrates how to import a pdf file into SMS using //  the SMS API set. // //  This sample is referenced in the Back Office documentation for SMS // // ====================================================================

好像说什么把PDF文件导入到SMS里面,我下意识的以为是短消息。又搜索了一把:

SMS Distributable Programs
When creating a new software package to run in a Microsoft? Systems Management Server (SMS) environment, you must include a setup or installation program that supports the requirements of the SMS environment. You must also include a package definition file (PDF) that contains predefined Workstation, Sharing, and Inventory property settings for your package, and a package directory structure containing the files required to support the installation options in the PDF.

原来是 Microsoft? Systems Management Server

[quote]

Systems Management Server(SMS)为基于Microsoft Windows(r)的桌面计算机和服务器系统提供了极具成本效益的、可伸缩性的变更和配置管理。建立在行业标准管理协议的基础上,Systems Management Server与Microsoft和其它公司的补充管理工具相兼容。此外Systems Management Server与Microsoft SQL Server?和Windows NT以及Windows 2000 Server操作系统完全集成–使其在任何规模的网络中都容易安装、配置和维护。

为实现更好的IT管理而提供的关键特性

软件发布:SMS通过简单或高级企业网络部署应用程序、软件更新和操作系统。详情请见Deploying Software with SMS.

资产管理:SMS发现并跟踪所有分布的基于Windows的软件和硬件资产–膝上型电脑、台式机和服务器等。详情请见Collecting Asset Information with SMS 2.0.

远程问题解决:SMS包括一组工具来帮助IT管理员发现并解决基于Windows系统的常见问题–从一个中心地点。详情请见Remote Diagnostics with SMS 2.0.

可实现更高商业价值的主要优点

可靠的安全性:保障基于Windows的台式机、膝上型电脑和服务器安全。通过结合系统清单和软件分发,SMS能够显示那些计算机需要的重要系统和安全升级,然后有效地分发这些升级。管理员能够使用SMS详细的报告结构确认他们的安装成功与否。
最新的清单 以已经部署的或正在使用的软件及系统来调整软件的购买。除了基于Web的报告所提供的信息,IT管理员还能够利用SMS内置的软件清单特性。
快速部署:提高商业的灵活性:继快速采纳技术之后。通过使用SMS清单特性在一个分布的计算环境中规划部署,并利用其软件分发特性来执行规划,组织就能够迅速、安全并划算地处理他们的IT需求。
成本效益支持:减少了花费在帮助桌电话上的宝贵时间;降低成本并提高生产效率。从运营费用和IT员工生产效率的角度来看,一个冗长的帮助桌电话成本高昂。SMS让帮助桌员工能够获得关键的系统信息,这样他们就能花费较少的时间发现并解决问题。此外,IT员工获得的一整套远程诊断工具可以帮助他们解决这些问题。
快速发现和解决问题:最小化对基于Windows的台式机、膝上型电脑和服务器进行访问所需的高昂成本。不论是为了发现和解决问题或是为了发布软件升级,对于IT部门来说,对个人计算机进行实际的操作,这实在是太频繁,成本太高。有了发现和解决问题的远程诊断工具,以及快速和轻松分发所有基于Windows软件的技术,SMS让你的IT员工把更多的时间花费在处理关键业务上,而花费较少的时间光顾和维护个人桌面和服务器。
基于Windows的管理:全面利用你的技术投资。通过投资Windows平台,组织获得了一个强大的操作系统和一个业界标准的管理基础设施。SMS与这一基础设施完全集成,提供大大增强的对基于Windows系统的修改和配置管理。

[/quote]

简直太恶搞了~~~~~~~

标签:, ,
Google Short Message Service (SMS) - 七月 13, 2005 by yippee

Google Short Message Service (SMS) GOOGLE的短消息服务www.yippeesoft.com

What is Google SMS? 什么是GOOGLE SMS

Google SMS (Short Message Service) enables you to send queries as text messages over your mobile phone or device and easily get precise answers to your questions. No links. No web pages. Just text — and the information you\’re looking for:sms可以让你通过你的移动手机移动设备发送一条文本查询消息,获得你的问题的准确回答。不需要连接,不需要网页,只是文本和你要查询的信息

Get local business listings when you\’re on the road and want to find a place to eat. 如果你在路上想找一家吃饭的地方,找到本地商家列表www.yippeesoft.com
Obtain driving directions to get from point A to point B without having to ask for directions. 不需要问路,获得从A点到B点的前进路线
Find movie showtimes and theater locations of movies currently playing near you. 找到离你最近的电影院播放时间、以及正在播放的电影
Check weather conditions and 4-day forecasts to plan your day. 检测天气情况,获得4天预报来安排每天
Study the latest stock quotes and stay on top of the market. 获得最新的股票报价行情,永远在市场的前沿
Get quick answers to straightforward questions. 为直接的问题获得准确的回答www.yippeesoft.com
Compare online product prices with ones you find in retail stores. 获得你在零售店找到的商品的在线价格比较
Look up dictionary definitions to expand your vocabulary or prove a point. 查找字典说明扩展你的词汇量或者证明你的观点How do I use it?如何使用?

Enter your query as a text message. 输入你的查询
Send the message to the US shortcode 46645 (GOOGL on most phones).发送短消息到美国短码46645,大多数话机上的GOOGLE字母的数字排列
Receive a text message (or messages) with your results, usually within a minute. Results may be labeled as "1/3", "2/3", etc. 接收短信,获得结果,通常在一分钟以内,结果可能有几条
To get Google SMS help info sent directly to your phone, send the word \’help\’ as a text message to 46645. 发送HELP作为短消息到46645,GOOGLE短信帮助信息直接发送到你的手机     Try our online demo.试验在线演示 www.yippeesoft.com

Want to learn more?需要了解更多www.yippeesoft.com

Find more information with our sample queries 获得更多我们例子查询的信息
Download our wallet-sized Tips Sheet. [pdf] 下载
Do you have more questions? Look through our Frequently Asked Questions. 还有更多问题,查看常见问题解答
Google SMS is available on all major carriers. 

http://www.google.com/sms/ TCVS基本翻译完毕,准备翻译SUBVERSION的,先翻译几篇GOOGLE上面的新东西的文章

标签:, , , ,