自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(64)
  • 资源 (4)
  • 问答 (1)
  • 收藏
  • 关注

原创 库使用报错: fatal error C1083: 无法打开编译器生成的文件:“../lib_json\json_writer.asm”: No such file or directory

编译错误提示:1>D:\parse\jsoncpp-0.10.7\src\lib_json\json_writer.cpp : fatal error C1083: 无法打开编译器生成的文件:“../../build/vs71/release/lib_json\json_writer.asm”: No such file or directory1>LINK : fatal error LNK1257: 代码生成失败解决方法:修改生成静态库文件的工程的属性:路径为:菜单---项目--属

2020-10-09 10:51:57 1183

原创 linux C++库文件编译报错:error: file not recognized: File format not recognized

在升级 thrift 版本时,遇到编译报以下错误:libthrift-0.13.0.so:-1: error: file not recognized: File format not recognized这种问题是文件格式有问题,通过查看文件属性:#异常库文件指令:file libthrift-0.13.0.so返回:libthrift-0.13.0.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), statically l

2020-10-09 10:48:49 3092

原创 linux库文件安装报错:arm-none-linux-gnueabi-ranlib: command not found

交叉编译glog,再安装时报以下错误:libtool: install: arm-none-linux-gnueabi-ranlib /usr/local/lib/libglog.a./libtool: line 1734: arm-none-linux-gnueabi-ranlib: command not foundMakefile:1021: recipe for target 'install-libLTLIBRARIES' failed从网上找的的解释:当sudo时,将丢失PATH环境

2020-09-28 10:25:26 1630

原创 hex码与float在线相互转换链接

hex转gloatfloat转hex

2020-09-15 17:09:37 5381 2

原创 thrift-0.13.0使用报错: variable ‘boost::shared_ptr<TSocket> socket’ has initializer but incomplete type

在将 thrift-0.9.1 升级为 thrift-0.13.0 时,编译报错:thriftopertor.cpp:4702: error: variable ‘boost::shared_ptr<apache::thrift::transport::TSocket> socket’ has initializer but incomplete type boost::shared_ptr<TSocket> socket(pTSocket);根据网上查找的资

2020-09-11 17:50:57 732

原创 linux thrift-0.13.0编译C++库文件

1、安装autoconf/automake/bison/boost/lievent依赖确定相关依赖软件的版本:autoconf-2.69,automake-1.14,bison-2.5.1,boost_1_70_0,libevent2其中autoconf,automake,bison在centos7下通过yum安装满足版本要求。安装包安装可参考:安装wget sudo yum install -y wget安装 autoconfwget http://ftp.gnu.org/gnu/autoc

2020-09-10 17:53:59 1247

原创 Jsoncpp精度控制修改

本文只针对 FastWriter::write函数修改,其他类似头文件位置:jsoncpp-0.10.7/include/json/writer.h修改内容:#157行class JSON_API FastWriter : public Writer {public: FastWriter(); virtual ~FastWriter() {} void enableYAMLCompatibility(); std::string write(const Value&

2020-09-03 08:48:09 490

原创 linux Jsoncpp编译

1、下载Jsoncppjsoncpp下载地址2、下载sconsscons下载地址3、安装scons解压scons,并执行安装命令:tar -zvxf scons-2.1.0.tar.gz //解压sconscd scons-2.1.0sudo python setup.py install4、编译jsoncpp进入到jsoncpp解压目录下,执行命令:sudo scons platform=linux-gcc头文件在 ./jsoncpp-src-0.7.0/include/目录下

2020-09-03 08:47:30 384

原创 linux libcurl使用中遇到的问题

一、编译libcurl下载地址1)解压tar -zxvf curl-xxx.tar.gz2) 进入curl 目录,执行下列命令./Configuremake make install //将库文件安装到/usr/local/lib,头文件再/usr/local/includemake clean //将编译内容删除make uninstall //删除安装的库文件执行指令后有两个文件:一个静态库文件和一个动态库文件。二、使用1)以上述编译方法生成的静态库文件无法使用,报未定义错

2020-09-02 10:41:33 536

原创 kafka参数配置说明

C / P图例:C =消费者,P =生产者, =两者*一、全局配置属性(CONF_GLOBAL)属性C/P默认说明builtin.features*指示此librdkafka构建的内置功能。应用程序可以查询此值,也可以尝试使用必需功能列表设置该值以检查是否支持库。client.id*rdkafka客户标识符。metadata.broker.list*经纪人的初始清单。该应用程序还可用于rd_kafka_brokers_add()在运行时添加代理。

2020-08-26 17:14:46 1390

原创 C++实现OPC数据读取学习参考

1、OPC开发环境的配置2、OPC客户端开发之OPC服务器的枚举和连接3、OPC添加组和添加项4、OPC同步读取和异步读取5、OPC数据订阅

2020-08-26 17:14:25 2848

原创 C++实现读取OPC Items

从网上搜集的资料,分享一下。运行过程中发现一个问题,目前尚未解决,希望懂得人能解答一下,具体问题如下:pIOPCBrowseServerAddressSpace->GetItemID 函数执行成功,pItemID返回值为空,随后 pIOPCItemProperties->QueryAvailableProperties 执行失败,错误码: OPC_E_UNKNOWNITEMID ((HRESULT)0xC0040007L) 。通过opc 客户端发现items数据结构为:二级目录为数据名,如 1

2020-08-26 17:13:52 1380 1

原创 C++实现OPC Server远程连接

首先声明一下,常搜索到的函数 CLSIDFromProgID 只能查询本地注册表的值,如果OPC Server与客户端不在同一台服务器,这个函数就没有用。另一种连接方式,是通过opc server的CLSID(打开注册表 ,计算机\HKEY_CLASSES_ROOT\服务名),再通过 CLSIDFromString 函数,这种方式有些取巧,不过也能实现功能。具体如下 CLSID clsid_citect; COSERVERINFO si; ZeroMemory(&si, sizeof(si)

2020-08-26 17:13:37 2445 1

原创 C++ AES加密实现

网上找到的,分享一下:Base64.h:#ifndef BASE_64_H#define BASE_64_H//#include "stdafx.h"#include <string>std::string base64_encode(unsigned char const* , unsigned int len);std::string base64_decode(std::string const& s);#endifBase64.cpp://#inclu

2020-08-26 17:12:51 1091

原创 C++ zookeeper库使用示例

从网上找了一个示例程序,但是用的不是很好,其中还有点问题,最后根据我自己的使用贴一个示例,希望能给大家学习时提供点参考:zkClient.h#pragma once#include "../zookeeper/zookeeper.h"#include <iostream>#include <sstream>#include <string>#include <unistd.h>#include <fcntl.h>#include

2020-08-26 17:12:10 1928

原创 libjansson库简单使用

网上对 libjansson 库的使用介绍较少,即使有也是简单的解析和组装jason,我通过尝试了很多次,算是把库的使用方法给试出来了,把我的代码贴处理,方便大家学习参考:libjansson API介绍CJsonHandle.h:#ifndef CJSONHANDLE_H#define CJSONHANDLE_H#include <string>#include <map>#include <algorithm>#include <jansson

2020-08-26 17:11:44 1505

原创 linux 错误:too many open files解决方法

too many open files错误是由于程序使用的句柄(打开的文件、socket、线程句柄等)过多导致的,一般linux系统默认1024,可输入指令: ulimit -a 查询当前设定的句柄上限。使用命令lsof -p 进程id可以查看单个进程所有打开的文件详情,如果文件数过多使用lsof -p 进程id命令无法完全查看的话,可以使用lsof -p 进程id > openfiles.log将执行结果内容输出到日志文件中查看。修改方式:一、临时命令指令 ulimit -n 2048 把当

2020-08-26 17:11:11 3815

原创 jsoncpp库使用中遇到的问题

一、解析时未使用严格模式,抛出异常通常各种博文里给的示例都是这种: std::string strJson="{\"123\":123}"; Json::Reader Reader; Json::Value Value; if(false == Reader.parse(strJson,Value)) { return false; } .....一般情况下解析不会出错,但是部分非json格式数据,如“{“123”:123}}}”,在这种写法下,不会返回错误,能继续运行,在后续使用V

2020-08-26 17:10:52 2343

原创 调用thrift报错:Invalid method name:‘XXXX’

使用thrift过程中失败,返回 Invalid method name 错误。网上查找资料,大致分为以下几点:1、调用服务的IP、端口是否正确;2、客户端调用的远程方法,服务端并未暴露出来,详见Thrift常见异常及原因分析;3、使用的传输层不一致导致的,客户端使用 TBufferedTransport ,服务端使用 TFramedTransport。在判断上述无误后,找到问题:TMultiplexedProtocol 构造函数的服务名与实际类服务名不一致,EquipInfoRAoClient 类

2020-08-13 15:51:41 2475

原创 linux下tm未初始化导致的时间异常

在linux下,若想使用 struct tm 从一个字符串中获取时刻秒数,则必须初始化。下面的示例代码,在服务器中运行时,tmTime 的值会出现不为1595410483 的情况,导致程序处理出错。 struct tm when; time_t tmTime = 0; std::string strTime = "2020-07-22 17:34:43"; sscanf(strTime.data(), "%d-%d-%d %d:%d:%d", &when.tm_year,

2020-07-22 18:02:58 986

原创 linux 串口读取全为0

最近碰到一个linux串口读取问题,蓝牙转USB接到设备上,软件运行在linux容器上,read函数调用成功,读取的数据长度与发送长度一致,但是读取内容全部为0,后面修改波特率后,能正常读取到数据。...

2020-06-25 11:46:32 1120

原创 jansson库double精度控制

jansson库可使用JSON_REAL_PRECISION()控制精度://精度控制,保持6位数据(包含小数)char *pJson = json_dumps( root ,JSON_REAL_PRECISION(6));free(pJson);

2020-05-28 18:33:55 426

原创 OPC使用过程中错误

1、 CLSIDFromProgID 函数调用失败错误码:0x800401F3解决方法:不同服务器间通过 CLSIDFromProgID() 函数解析 OPC服务器ProgID失败,目前未找到相应的解决方法。博主直接从注册表中获取UUID(注册表:计算机\HKEY_CLASSES_ROOT*ProgID*),跳过解析,再通过 CLSIDFromString()函数将UUID转换。2、 AddGroup返回OPC_S_UNSUPPORTEDRATE错误码:0x0004000DL解决方法:该问题由于

2020-05-24 10:07:35 2652

原创 OPC 错误码

OPC 错误码//==============================================================================// TITLE: operror.h//// CONTENTS:// // Defines error codes for the Data Access specifications.//// (c) Copyright 1997-2003 The OPC Foundation// ALL RIGHTS RESER

2020-05-24 10:07:16 3467

原创 OPCServer:Matrikon OPC Server Simulation的使用

简介:项目需要 OPC 进行对接,通过查找资料,已经大致了解 OPC 客户端如何使用C++编码,没有 OPC 服务端环境,通过查询了解到Matrikon OPC Server Simulation 可以作为 OPC 模拟服务器。本文参考了《OPCServer:使用Matrikon OPC Server Simulation》,不过由于该文章对使用部分细节不详细,所以想把自己摸索的步骤记录下来;...

2020-05-07 20:54:42 4419 2

原创 解决centos内存剩余不足问题

系统在 /root 目录下实际使用内存较小,回收站也没有文件,但仍报剩余内存不足,通过指令获取文件占用情况:du -h /root结果显示 /root 目录使用内存为2.5G,其中/root/.cache 占用了1.6G。解决方法:cd root/.cache/vmware/drag_and_droprm -rf *...

2020-05-07 20:54:29 2700 2

原创 SQL Convert格式化获取时间

我们从数据库中获取数据的时间格式经常出现问题,如从数据库中获取的时间格式为”2020/05/07 10:00:00“ 或”2020/5/7 10:00:00“ ,这时想若想改变时间格式就需要使用convert函数。convert函数的语法:CONVERT(data_type(length),data_to_be_converted,style)其中,data_type(length)表示为转...

2020-05-07 20:54:01 327 1

原创 域名解析IP

域名解析IP函数:windows版本:#include <winsock2.h>struct hostent *gethostbyname(const char *name);linux版本:#include <netdb.h>struct hostent *gethostbyname(const char *hostname);返回值:非空指针——成功,...

2020-04-21 10:58:27 528

原创 《OPCDA服务器与客户程序开发指南修订版》在线阅读分享

《OPCDA服务器与客户程序开发指南修订版》文档在线阅读的网址:《OPCDA服务器与客户程序开发指南修订版》

2020-03-18 20:26:55 479 1

原创 jsoncpp double精度问题及控制

在使用 jsoncpp 的时候,发现double类型数据在组成 json 数据时小数保留位较多,查询资料后才发现,jsoncpp 已经把double数据保留位写死了,这里sprintf(formatString, “%%.%dg”, precision);的结果是“%.17g”,是输出17位的有效数字,不足的补足17位。我的解决方法是:将sprintf(formatString, “%%.%dg...

2020-03-16 15:06:09 2859

原创 linux glog 64位交叉编译

1、下载glog下载2、解压tar -zxvf glog-master.zip3、编译./autogen.sh./configure --host=aarch64-linux-gnu-gcc CC=aarch64-linux-gnu-gcc CXX=aarch64-linux-gnu-g++makemake install注意事项:1、大部分博客中交叉编译语句是:./conf...

2020-03-15 15:40:43 1919 2

原创 LoadLibrary 调用失败错误码记录

在某些服务器上,LoadLibrary 函数会出现调用失败的情况,以下是我的一些出错经验,希望能给其他人提供一些思路:错误码 126 (找不到指定的模块):错误码 5 (拒绝访问):1、可能是由于杀毒软件造成的,可以尝试禁用 360 等杀毒软件...

2020-03-15 11:27:12 1753

原创 中华人民共和国水利行业标准SL 323-2011资料下载

中华人民共和国水利行业标准SL 323-2011下载地址:中华人民共和国水利行业标准SL 323-2011

2020-03-04 09:39:34 781

原创 linux 下paho.mqtt.c gcc编译及交叉编译

一、下载路径paho.mqtt.c下载路径本文示例版本:paho.mqtt.c-1.1.0.tar.gz二、gcc编译1、安装openssl库yum install openssl openssl-develcd paho.mqtt.c2、编译、安装mqtt库makesudo make install三、交叉编译1、解压、创建编译目录cd paho.mqtt.cmkdir...

2020-02-27 16:40:36 1796

原创 linux下 jansson gcc编译及交叉编译

一、编译安装包版本jansson-2.11.zip二gcc编译1)安装autoreconfapt-get install autoconf / yum -y install autoconf2)安装LIBTOOLapt-get install libtool / yum -y install libtool3)解压,进入解压目录unzip jansson-2.11.zip...

2020-02-27 16:29:51 967

原创 linux下cmake安装

1、cmake下载地址https://cmake.org/files/2、安装步骤1)解压cmake选择linux版本cmake包,如cmake-3.14.6-Linux-x86_64.tar.gztar -zxvf cmake-3.14.6-Linux-x86_64.tar.gz解压后,cmake路径下共包含四个文件:share、man、doc、bin;2)复制到安装目录mv c...

2020-02-27 15:03:37 317

原创 paho mqtt调用MQTTClient_connect失败,返回MQTTCLIENT_BAD_STRUCTURE(-8)

1、问题描述使用编译好的库文件,从githup上下载头文件,运行时MQTTClient_connect调用失败,返回MQTTCLIENT_BAD_STRUCTURE;MQTTCLIENT_BAD_STRUCTURE在MQTTClient.h中是struct_id或struct_version 不正确,其定义为:/** * Return code: A structure parameter...

2020-01-19 14:08:56 8593 3

原创 librdkafka编译及简单使用过程简介

librdkafka 使用了 C++11,使用 VS2010 无法编译,需要使用更高版本的 VS 才能编译,我这里使用的是 VS2017。1、编译版本编译环境:windows VS2017openssl 版本:openssl-1.0.2t(如果不想编译,可下载 Win32OpenSSL-1_0_2t.exe安装,同时编译库文件路径不使用 …\lib\VC\static,改为…\lib\VC即...

2019-12-02 20:22:23 4885 1

原创 Pycharm 无法导入安装库及打包问题

1、Pycharm 无法导入安装好的库在 Python38\Scripts 目录下执行pip install pymssql-2.1.4-cp38-cp38-win_amd64.whl命令,安装好 pymssql 库后,在Pycharm使用 pymssql 库报 not found 错误,只需要使用以下两种方法:1、在sys.path列表中添加新的路径;2、设置PYTHONPATH环境变量,...

2019-11-27 20:59:28 2191

原创 SQL ORDER BY/GROUP BY/HAVING简介(十)

1、ORDER BYORDER BY 关键字用于对结果集进行排序,默认按照升序(ASC)对记录进行排序,如果需要按照降序对记录进行排序,您可以使用 DESC 关键字,其语法如下:SELECT column_name,column_nameFROM table_nameORDER BY column_name,column_name2 ASC|DESC;注意事项:1、对多列排序时,先按...

2019-11-27 20:59:17 150

OPC客户端.rar

opc客户端,用于测试opc服务器是否有用。文件包含三个包:opc.rar、OPCclient.rar、OPCClientFS.rar,分别包含不通种客户端工具,分别为:OPCClientTool.exe、OPCClient.exe、opcquickclient.exe等测试工具。

2020-05-22

OPC da 开发库文件头文件.rar

opc da 开发库文件和头文件,总共我找到的五个压缩包,其中有重复,分别为OpcProxyStub.zip 、opcproxy.zip 、OpcInclude.zip 、OPCDAInclude.zip 、OPC Automation2.0 opc .zip,我win10系统,使用OpcProxyStub.zip中文件安装开发环境,使用OpcInclude.zip中的头文件。

2020-03-19

glog_SourceAndCompile.rar

压缩包内包含glog源码,对glog源码进行修改后以及编译的后的头文件、库文件

2019-08-14

cximage599c_linux.tar.gz

CxImage是一个优秀的图像操作类库。它可以快捷地存取、显示、转换各种图像。可用于图片加水印.

2019-07-30

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

TA关注的人

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