Dmc雷赛板卡仿写(一):exe新建和库文件的添加
Dmc雷赛板卡仿写第一步:
1.VS中的app基础框架
生成一个基于cmake的app空白页面
创建一个文件夹,总的cmake:
cmake_minimum_required(VERSION 3.5)if (MSVC)# 设置 msvc 输入代码编码格式为 utf-8set(CMAKE_CXX_FLAGS "/source-charset:utf-8")
endif()set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_CXX_STANDARD 14)
set(CMAKE_CXX_STANDARD_REQUIRED ON)add_subdirectory(Dmcdo)
创建Dmcdo文件夹,子Dmcdo文件夹中的cmake为:
project(Dmcdo LANGUAGES CXX)if (MSVC)# 设置 msvc 输入代码编码格式为 utf-8set(CMAKE_CXX_FLAGS "/source-charset:utf-8")
endif()set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_CXX_STANDARD 14)
set(CMAKE_CXX_STANDARD_REQUIRED ON)find_package(Qt5 COMPONENTS Core Network Widgets REQUIRED)add_executable(${PROJECT_NAME}main.cppfuncdmc.hfuncdmc.cppQtTestWidgetsClassApp.cppQtTestWidgetsClassApp.hQtTestWidgetsClassApp.uiQtTestWidgetsClassApp.qrcapp_win32.rc
)
target_link_libraries(${PROJECT_NAME} Qt5::Core Qt5::Widgets Qt5::Network)if(MSVC)set_target_properties(${PROJECT_NAME} PROPERTIES WIN32_EXECUTABLE YES LINK_FLAGS "/ENTRY:mainCRTStartup")
endif(MSVC)
在第一行,可以更改生成的exe的名字,现在的名字是dmcdo
funcdmc.h
funcdmc.cpp为之后跟库有关的接口的类
QtTestWidgetsClassApp为创建的界面类,之后写入方便调试的界面
2.导入库文件:LTDMC
在子文件夹中加入:
//在这里加入动态库存放的地址
include_directories("D:/program_test/Dmcdo/Dmcdo")
link_directories("D:/program_test/Dmcdo/Dmcdo")if (MSVC)# 设置 msvc 输入代码编码格式为 utf-8set(CMAKE_CXX_FLAGS "/source-charset:utf-8")
endif()******************
//省略一些代码//在这里加入动态库名:LTDMC
target_link_libraries(${PROJECT_NAME} Qt5::Core Qt5::Widgets Qt5::Network LTDMC)
//在总cmake里面同样增加:
include_directories("D:/program_test/Dmcdo/Dmcdo")
link_directories("D:/program_test/Dmcdo/Dmcdo")
另外:如果不使用这种绝对地址的形式,可使用下面这种:
创建一个文件夹,放入到环境变量里面:比如,把下面这个文件夹在环境变量里面设置为:HOME
则以上添加地址的代码变为:
include_directories("$ENV{HOME}/include")
link_directories("$ENV{HOME}/bin")
然后把头文件加入到include目录下,库文件放在bin下
在新建的类中使用函数时加入对应的头文件即可
Dmc雷赛板卡仿写(一):exe新建和库文件的添加相关推荐
- Dmc雷赛板卡仿写(二):库文件导入报错PVOID未声明的标识符
导入库成功但是.h文件报错 例如: 解决办法:在导入头文件LTDMC.h之前,导入windows头文件 #include <windows.h> #include <LTDMC.h& ...
- Dmc雷赛板卡仿写(三):创建类
例程里面有两个类: dmcaxis,dmcio //dmcio类 #pragma once#include <QString> #include <QJsonObject> # ...
- Dmc雷赛板卡仿写(六):数据在程序中的保存与读取 ,类变量读写,json文件数据读入,ini文件数据读入
1.类变量读入(之前类的学习中写过) //在.h中实例化了这些类using AxisName = QString;using AxisHash = QMap<AxisName, DmcAxis* ...
- Dmc雷赛板卡仿写(十):线程池的调用,(json中的maxthreadcount字段),写调试界面测试之前写的LTDMC的接口
线程池的用法(接上一篇) 设置线程池的最大线程数 #include <QThreadPool>void initMaxThreadCount(int configCount) {// 设置 ...
- Dmc雷赛板卡仿写(七):日志管理
1.日志管理Log 这里用到了两种 a.使用QT自带的系统日志 使用到instance单实例模式 //先新建一个类(logstudy.h) #include <QObject> #incl ...
- 浅析jQuery原理并仿写封装一个自己的库
[前言]最近项目忙的脚不沾地,刚刚结束,准备整理一下以前写的一些学习笔记和技术文章.本文原是很久之前看jq源码时写的片段,隔了很久再看都忘得差不多了.简单整理出来,做个记录. 作为一名前端工程师,jQ ...
- C#运控框架 雷赛运动控制 DMC系列 运动控制项目 C#源码
C#运控框架 雷赛运动控制 DMC系列 运动控制项目 C#源码 1.别看它界面丑,里面的应有应该尽有; 2.麻雀虽小五脏俱全,很适合新手的一个学习项目,绝对推荐 3.本人也是通过这个项目进入运控行业; ...
- c#上位机 源码 控制固高,研华,雷赛这类的运动板卡。偏向 程序运动控制。winform+板卡+sqlite
c#上位机 源码 控制固高,研华,雷赛这类的运动板卡.偏向 程序运动控制.winform+板卡+sqlite
- 2022仿写b站首页
仿写b站首页 ```html <!DOCTYPE html> <html lang="en"> <head><meta charset=& ...
最新文章
- 【Python】Python 过滤列表
- etcd工作原理和CentOS 7部署指南
- 使用Struts 2框架实现文件下载
- java pdfbox2 中文乱码,如何从PDFBox 2.0.2中的PDDocument提取字体
- gin context和官方context_Go Web 小技巧(一)简化Gin接口代码
- python为什么closed_为什么Python无法解析此JSON数据? [关闭] - Why can't Python parse this JSON data? [closed]...
- 伪随机数生成器——random模块的用法
- 用vuejs如何实现ajax,vue.js如何实现ajax
- jquery easyui 多选下拉框的实现
- 弹出窗口刷新它的父页面后。出现不重新发送信息,则无法刷新网页
- Android--获取当前系统的语言环境
- hdu5800_dp
- boost mysql_玩转MySQL 8.0源码编译
- 生产者-消费者模型之集合SynchronousQueue源码解读
- Gh0st3.6编译和源码免杀问题
- VMware Workstation 虚拟机中的 虚拟机访问物理机(仅主机模式)
- 人脸识别技术开发解决方案,人脸识别智慧工地应用开发
- mysql创建数据库表_mysql基础之创建数据库和表
- Java第十一章总结 枚举与泛型
- 大数据常见面试题总结,有问必答
热门文章
- 《听什么歌都像是在唱自己》——网易云音乐那些热评
- 计算机中硬盘上删了的东西为什么还可以恢复sd卡可以吗,怎么从SD卡中恢复误删文件...
- 单片机-人数统计系统
- 轻量级Kubernetes之k3s:4:离线安装与部署
- 闲情赋片段——陶渊明
- java在线影院系统计算机毕业设计MyBatis+系统+LW文档+源码+调试部署
- vue项目启动提示Error: No ESLint configuration found.
- 苹果x与苹果xs的区别_炎炎夏日,细数那些一见“清新”的苹果XS手机壳
- 学好ASP编程必会的代码
- js打印直角三角形,九九乘法表(小白进)各种疑难杂题持续更新...