串口编程

Posted on 2014年1月08日 15:33

1. 如何获取系统串口信息?

通过查询HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\SERIALCOMM可以看到串口编号。

Qt 技巧积累

Posted on 2014年1月08日 15:31

阅读全文

SVN问题汇总

Posted on 2013年12月11日 23:39

问题4:Commit后提示以下错误,无法提交成功!

命令行下,提示 "svn: Commit failed (details follow):  svn: '/***/xxx.c' is scheduled for addition, but is missing"
用RabbitSVN,图形界面下提示 "/xxx/xxx.c is not a working copy"

原因:之前用SVN提交过的文件,被标记为"add"状态,等待被加入到仓库。若此时你把这个文件删除了,SVN提交的时候还是会尝试提交这个文件,虽然它的状态已经是 "missing"了。

解决:在命令行下用 "svn revert xxx.c",在图形界面下,右键--Revert,选中那个文件。这样就告诉SVN把这个文件退回到之前的状态 "unversioned",也就是不对这个文件做任何修改

gSOAP使用方法

Posted on 2013年12月11日 16:15
wsdl2h -o calc.h http://www.genivia.com/calc.wsdl
soapcpp2 -i -C -Iimport calc.h

上面-o是指定路径,-i是指定得到C++代理类和客户端(服务端)代码,-C指仅需要客户端代码。-I后面跟着的是import文件的目录。在windows下,最好直接指定完整的绝对路径。最后的参数是上一步骤中生成的.h头文件。

最后将生成的全部文件拷贝到相关项目下,可以不拷贝第一步中生成的头文件。

除此之外,还需要引入这样几个文件:

stdsoap2.h/.c/.cpp。

接下来就基本可以参考以下代码引用了:

#include "soapcalcProxy.h" 
#include "calc.nsmap" 
main() 
{ 
   calcProxy service; 
   double result; 
   if (service.add(1.0, 2.0, result) == SOAP_OK) 
      std::cout << "The sum of 1.0 and 2.0 is " << result << std::endl; 
   else
      service.soap_stream_fault(std::cerr); 
}

引用的第一个头文件是代理类的头文件,第二个是第二步中生成的nsmap文件,除此之外,就不需要别的了。

Oracle运维笔记

Posted on 2013年12月08日 17:28
select status from v$instance;