自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 资源 (3)
  • 收藏
  • 关注

原创 CMake跨平台编译小插曲

将一个在WINDOWS上编译好的paho.mqtt源码, 拷贝到LINUX进行编译,安装好CMAKE后, 删除CMakeCache.txt, 执行cmake, 反复出现莫名其妙的错误:CMake Error at /usr/cmake-3.7/Modules/CMakeTestCCompiler.cmake:51 (message) …cmake /usr/bin/ld: unrecogn...

2018-10-11 15:08:49 1580

原创 QSettings注意的事项

QSettings,很好用,也很易用,但在一些场景下(如程序异常退出、异常断电), 容易出现配置丢失的情况!void QSettings::setValue(const QString & key, const QVariant & value)setValue函数设置指定KEY的值,如果已存在则替换先前的值,但它并不立即回写文件,给断电、异常退出提供了丢失数据的机会!...

2018-10-11 15:06:43 4131

原创 说说QTcpSocket的waitFor系列函数

派生自QAbstractSocket的QTcpSocket, 似乎先天就是为异步读写设计的, 不关心时效,在信号槽中读写可以很悠然, 但是,在没有事件循环的辅助线程中、在需要同步读写的场景下很操蛋。QAbstractSocket提供了waitForConnected、 waitForDisconnected、waitForBytesWritten、waitForReadyRead四个函数用于同...

2018-10-11 15:03:29 12095 1

原创 REDIS日记

当REDIS已用内存超过maxmemory限定时,将主动清理过期的KEY,甚至包括还未过期的KEY(取决于清理策略), 最近在一个KEY值自动消失的问题上花了较长时间…...

2018-10-11 14:59:08 146

原创 gsoap-2.8使用时需要注意的几个事项

1  生成.h文件, wsdl2h.exe  *. wsdl -o *.htypemap.dat(gsoap目录下)最好拷贝到同一目录下 2  生成.cpp文件, soapcpp2.exe  *.h typemap.dat(gsoap目录下)最好拷贝到同一目录下 3  编译需要拷贝stdsoap2.h、stdsoap2.cpp, 在代码里包含 *.nsmap文件,

2013-04-27 09:53:43 1207 1

原创 G729编解码

最近下载了G729的源代码, 编译了其中的g729AnnexE,codere的输出码率远不是传说中的16:1, 压缩比不到2:1, 甚至体积比压缩前还大,反复翻阅文档及源码才发现, 它把输出编码成了BITSTREAM, 但实在看不出这么做有什么好处,花了一番功夫修改源码, 终于还原了6.4K、8K、11.8K 三个码率

2012-04-28 00:31:50 2459 3

原创 关于JRTPLIB RTPSession OnRTPPacket

使用JRTPLIB接收数据,通常的做法是: sess.BeginDataAccess(); if (sess.GotoFirstSourceWithData()){ do{  RTPPacket *pack;  while ((pack = sess.GetNextPacket()) != NULL){   //处理数据   sess.DeletePacket(pa

2012-03-11 01:45:47 2724 4

原创 libcmt.lib、msvcrt.lib冲突的主要原因

在VC++项目的编译链接过程中,libcmt.lib、msvcrt.lib冲突的情况常碰到:LIBCMTD.lib(crt0dat.obj) : error LNK2005: __cexit 已经在 msvcrtd.lib(MSVCR100D.dll) 中定义...... 发生这个冲突的最主要原因是: 该项目以及该项目导入的各种库(*.lib)的链接方式不一致, 比如导入的库使

2012-03-07 23:45:18 2268

原创 Qt如何尽量避免内存泄漏

<br />1、QObject派生类对象一定要标明parent<br />2、非QObject派生类对象,在文档没有特别要求的情况下,new 和 delete必须成对出现<br />非QObject派生类对象,new和delete成对出现, 这是保证内存不泄漏的基本准则,但QT中有许多特列,比如:<br />void QCoreApplication::postEvent ( QObject * receiver, QEvent * event, int priority ) [static]<br />T

2011-01-05 10:58:00 1969 1

原创 QLineEdit 一个令人抓狂的应用场合

QLineEdit 功能强大的行文本编辑控件,大多数情况下用起来非常轻松方便。这两天碰到了个特例,我需要在进行某些操作后,手动选中QLineEdit中的一个或一段文本,QLineEdit提供了如下函数:void QLineEdit::setSelection ( int start, int length ), 从start指定的位置选中长度为length的文本,如果QLineEdit没有设置任何InputMask,这个函数随便怎么使用工作都非常正常TestDlg::TestDlg(QWidget *par

2010-12-20 22:30:00 2056

原创 QDialog 关闭事件

<br />QWidget 可以在其关闭事件中做一些保存操作或决定是否允许其关闭<br /> <br />void MyWidget::closeEvent(QCloseEvent *event){ if (flag) { //允许关闭 event->accept(); } else { //拒绝关闭 event->ignore(); }}<br /> <br />同样

2010-12-13 23:34:00 13808 2

原创 QTableView 固定列宽度

<br />QTableView 提供一个函数:<br />void QTableView::setColumnWidth ( int column, int width )<br />用于设置column指定的列的宽度<br /> <br />但setColumnWidth设置后,用户可以通过鼠标拖拽列头重新设置宽度, 如何固定宽度不变?<br />联想到QWidget的setFixedWidth, 是不是QTableView也有个setFixedColumnWidth?<br />一番好找,setFix

2010-12-12 10:55:00 4238 1

原创 QDebug

QDebug是个好东西,能很方便地输出一些调试信息:......

2010-09-15 22:23:00 1990 2

原创 在WPF程序中使用系统热键

<br />写一个能使用系统热键的C/C++程序很容易,然而,用C#/WPF做一个同样的程序却不是那么容易...<br /> <br />原因很简单,WPF Window 没有 WIN32 Window的句柄HWND和消息处理函数WndProc,这使得在WPF程序中调用RegisterHotKey和捕捉WM_HOTKEY消息有点麻烦,浪费了大半天后,终于是解决了问题:<br /> <br />[Flags] public enum KeyModifiers { None

2010-07-30 10:13:00 1153

原创 Phonon

QT4.6提供了2个多媒体框架,QTMultimedia和Phonon,虽然nokia有意用QTMultimedia取代Phonon, 但至少现在看来QTMultimedia还有点单薄,播放音视频首选Phonon。Phonon默认的Backend(windows为Directx,linux为GStreamer)有很多限制,如果没有解码器,连个mp3都放不了,这个比较讨厌,网上比较流行的一种做法是下载并编译一个叫MPlayer的Backend(还没有时间去做)。打包Phonon程序也需要注意,除了打包该程序必

2010-07-15 22:35:00 983 1

原创 另一个wpf

    前段时间,用Sliverlight开发了一些应用,我越来越觉得,微软关于“Sliverlight是Wpf的一个子集的说法”不那么正确,或者说, 事实并不象微软说的那样。实际工作中,我用Wpf的机会要更多一些,因为公司的项目都是用Wpf加C++库完成的,前段时间SL开发中,我将它与Wpf做了些比较:    首先,运行库不同,Wpf依赖于200多M的.net3.x,而sliverlight

2010-01-02 11:44:00 558

原创 AccessText

如果问WPF如何给BUTTON设置快捷键, 很多人会给出这样的代码: private void Form1_KeyDown(object sender, KeyEventArgs e) { //当用户使用Ctrl + J ,就激活 Button1 if (e.Control == true && e.KeyCode == K

2009-12-01 17:50:00 720

原创 关于WPF的分层窗口

在 WPF 中,您可以通过设置以下 Window 属性来启用分层窗口:WindowStyle = NoneAllowsTransparency = trueBackground = Transparent分层窗口使 WPF 应用程序可以将内容呈现到屏幕中的非矩形窗口,实现漂亮的视觉效果,但是分层窗口也能带来一些莫名其妙的问题,比如,窗口花屏, 窗

2009-09-26 00:17:00 1347

tw2865 tw2868 tw2960驱动

tw2865 tw2868 tw2960驱动

2013-06-07

USB绑定RNDIS驱动

手机网络共享 USB绑定RNDIS驱动

2013-04-25

WN725N 2.0 驱动

TPLINK 无线网卡 WN725N 2.0 驱动

2013-04-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除