- 只需要几个代码块,注意32或者64位的qmaker会有区别
- 只需要几个代码块,注意32或者64位的qmaker会有区别
- 选择构建又会重新生成那个文档build
COM程序是window上进运行?Yes
qmaker是什么?
根据之前项目指南创建的项目文件.pro,并且运行qmake生成debug或release目录,里面含有qmake后生成的Makefile,但此时还未生成.exe;
- qmake 是为 Qt 量身打造的,使用起来非常方便
- cmake 使用上不如qmake简单直接,但复杂换来的是强大的功能
-
内置的 out-of source 构建。(目前QtCreator为qmake也默认启用了该功能。参考:浅谈 qmake 之 shadow build)
- 为各种平台和场景提供条件编译
-
可处理多个可执行文件情况,和很好配合 QtTest 工作
-
https://blog.csdn.net/vbskj/article/details/7792061
- qmake 需要一个 .pro 文件:
- cmake 需要一个 CMakeLists.txt 文件:
- mainwindow.ui 需要使用 uic 预处理
uic mainwindow.ui -o ui_mainwindow.h
- mainwindow.h 需要 moc 预处理
moc mainwindow.h -o moc_mainwindow.cpp
- 调用编译器进行编译
moc 预处理?
元对象编译器 moc
是用于处理 Qt 的 C++ 扩展 的程序。
moc
工具会阅读 C++ 头文件。若在类定义中发现了 Q_OBJECT 宏,则会建立一个 C++ 源文件,在其中包含了这些类的元对象代码。除此之外,元对象代码也被用于信号槽机制、运行时类型信息和动态属性系统。
推荐使用 qmake 生成工具来构建您的 makefile
。此工具会生成一个 makefile
文件来处理所有 moc
操作。
Because we had the moc
for signals and slots, we could add other useful things to it that could not be done with templates. Among these are scoped translations via a generated tr()
function,
makefile?
makefile定义了一系列的规则来指定哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为 makefile就像一个Shell脚本一样。
- 构建和重新构建时如果没有Makefile,会根据.pro文件等生成Makefile后再编译,最后生成.exe,还有许多.o目标文件;
点击运行是?
如果有改动则根据已有的Makefile进行重新编译、执行,否则就直接运行已有的.exe文件;还可以清理?jian
所以运行顺序应该是:qmake-构建-运行
build-COM-Desktop_Qt_5_14_2_MinGW_64_bit-Debug
以上文件加命名规则是根据这个。qmaker来构建的。同com名字而不是文件夹名字。
github真牛逼!!!!找到对的下载路径了。程序可以运行!!!
https://github.com/kernel1024/plcrecorder
external C是用来作什么的?
extern "C"的主要作用就是为了能够正确实现C++代码调用其他C语言代码。加上extern "C"后,会指示编译器这部分代码按C语言的进行编译,而不是C++的。
S7300的槽slot必须是2,rack?默认为1。
IP地址是连接PLC的计算机IP,如果是本机运行可以写127.0.0.1。
Rack和Slot针对S7-1200分别是0和1
通过另一个开源包?using S7.Net;
S7.NET.dll是gethub上的开源文件,里面没有任何使用限制,完全开源。
**!!!!**需要注意的是,200smart类型的PLC选型号的时候选择1200
第二个参数为IP地址
第三第四个参数分别为PLC的 rack机架、slot卡槽
常用型号对应机架、卡槽
型号 机架 卡槽
200 0 0
300/400 0 2
1200 0 1 (此处用做200smart时,参数也这么写)
http://www.ad.siemens.com.cn/club/bbs/post_like.aspx?a_id=1476016&b_id=50
什么是nettoplcsim?
https://sourceforge.net/projects/nettoplcsim/postdownload
是连接PLCSIM和
所要设置的参数是机架和插槽号(Rock/Slot)。如果连接对象是 S7 300 PLC,则机架和插槽号分别为 0,
如是 S7 400 CPU,要根据实际机架和插槽号来设置。设置完成后点击 OK确认.