一个XML文件可能含有CDATA区段数据,如何解析?
本文基于以下背景:
C++,TinyXml库(版本:2.6.1)
下面是一些未归类的命令及操作方法,专门记在此文中,以便将来查询。
由于文章较长,请用Ctrl+F查询关键字来定位到你需要的内容。
(1)反向域名解析查询:
在Windows下用这样的方法来查询域名反解是否做成功了:
ping -a 126.24.23.56
返回结果如果类似于这样:
注意:
这里说的只是用Visual Studio 2005打开Visual Studio 2008创建的C++工程,并不是说可以通过编译。
有时候我们只是想有结构地看看VC 2008的项目代码,并不想为此再安装一个VS 2008,所以只想让VS 2005能打开VS 2008的工程就可以了。
要修改的有两个文件:
本文很杂,主要是记录自己配置Ubuntu的过程中遇到的问题及网上搜到的解决方法。部分内容是网上搜来的,部分内容是自己写的。
本文在逐渐添加内容,期间经历了多次Ubuntu版本的升级,因此,下面的每一个条目不一定适用于每一个Ubuntu版本。
凌晨了,但是关于这个问题一定要记录下来,要不然以后不记得了,还得走弯路。
在做一个测试的时候,为了便于自动操作,用VC写了个软件来代替人工操作。简单地说,功能就是:不断地刷某URL,服务器那一端的程序会返回另一个URL,要看服务器端程序会不会出问题,同时要记录一些信息。
两年多以来一直用VC开发,但是从未开发过浏览器相关的程序,这次我只能仓促上阵:用CHtmlView来实现一个超简浏览器,然后判断页面是否加载完成,在页面加载完成后再做后续处理。
详见:MSDN里的CToolBar::SetSizes函数中的示例,摘抄如下:
// 这个例子演示了如何将文字添加到工具栏按钮上
int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CMDIFrameWnd::OnCreate(lpCreateStruct) == -1)
return -1;
很久以前记下的一条血的教训,当时折腾了很长时间,才从书上看到这个结论。串口通信时,如果你希望数据到达能监听到,那你可能会为了简单,而使用同步方式来实现数据的收发,用SetCommEvent来设置数据到达事件提醒,在监听线程中使用WaitCommEvent来等待数据的到达,数据一直没来,这时你又想要发送数据,于是用WriteFile来写,但此时你会发现,程序会锁死,为什么?如何解决?
注意:下面的英文部分是从西门子MC35i的AT命令手册中摘下来的,中文是我自己翻译的,可能有不准确的地方,但大概还是说明白了含义的,仅供参考。
AT+CNMI=<mode>,<mt>,<bm>,<ds>,<bfr>
后面跟5个需要设置的参数:
发送短信的时候,我们是确切地知道何时发送的;而接收数据的时候, 我们则不知道何时数据会到来,因此,在短信到达时,我们需要一种方式来获知它的到来并将其读出来。有两种方式:一是查询,二是触发事件。前一种方式我们不会用的,后一种方式是上选。我们可以预先对GSM模块设置一些参数,那么当它收到短信的时候,就会自动将数据送到串口上,我们就可以接着控制我们的程序去读取它了。
推荐“串口调试助手” ,调试起来非常方便。
(1)关于波特率:对有些模块,用超级终端进行配置的时候,波特率是要设置为57600的,而用串口调试工具进行调试的时候,波特率应设置为你的系统中用到的实际通信速率(例如我用的是9600),这两个波特率的概念是不一样的,前者只是用超级终端配置时的波特率。
最近在做GSM短信发送模块的软件,走了不少弯路,准备分几次一点点地写出来,仅供参考。
曾被网上的一些文章所误导,尤其是几篇非常流行点击率相当高的文章,可怜的我原来并不了解相关技术,后来才发现自己用GSM模块很多东西都与文中说的不一样,因此走了不少弯路,真是郁闷死。
关于PDU模式发送短信:
这是一个真彩工具条类。使用步骤:
(1) 在MainFrm.h中加入:
#define TOOLBAR_DRAW_BUTTON_WIDTH 32 //定义真彩工具条宽度
#include ”.UITrueColorToolBar.h” //真彩工具条支持类