搜索
bottom↓
回复: 62

用QT开发WIN应用程序是不是个大坑?

  [复制链接]

出0入8汤圆

发表于 2017-12-29 11:56:23 | 显示全部楼层 |阅读模式


就是一个很简单的功能,在combox里边显示几行字符串!
release 了,提示错误,分析了一下少这个东西少那个东西,设置了环境变量,添加各种DLL,
然后还是自己的电脑可以运行,其他电脑不能运行
下了个depend 分析,又少一大堆东西,感觉TMD的坑爹!


大家说用QT开发WIN应用程序是不是个大坑?
还想拿QT做一个需要串口,网络,数据库功能的软件呢!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!
头像被屏蔽

出0入0汤圆

发表于 2017-12-29 12:02:05 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入0汤圆

发表于 2017-12-29 12:02:27 | 显示全部楼层
qt开发安卓是万人坑,各种控件真是太差了。

ios下和win下还不错,win下注意要用静态编译,动态的好像很难支持winxp

出0入0汤圆

发表于 2017-12-29 12:03:58 | 显示全部楼层
不熟悉而已,用到的模块当然需要带相应的dll

出0入0汤圆

发表于 2017-12-29 12:04:10 | 显示全部楼层
另外,动态编译的话,把要的dll复制到exe下面就可以了,但是要注意一个很严重的问题,他的dll分为vs版和mingw版,如果复制错了,照样运行不起来而报的错误很奇怪。

出0入0汤圆

发表于 2017-12-29 12:05:01 来自手机 | 显示全部楼层
楼主,在命令行里用windeployqt命令可以生成所有需要的dll

出0入0汤圆

发表于 2017-12-29 12:05:14 | 显示全部楼层
感觉开发win上的程序本身就是大坑。
从xp一路到win10,没有几个程序是全兼容的。
头像被屏蔽

出0入0汤圆

发表于 2017-12-29 12:06:35 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
头像被屏蔽

出0入0汤圆

发表于 2017-12-29 12:08:03 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入8汤圆

 楼主| 发表于 2017-12-29 12:12:55 | 显示全部楼层
bbs2009 发表于 2017-12-29 12:02
大家说用QT开发WIN应用程序是不是个大坑?
还想拿QT做一个需要串口,网络,数据库功能的软件呢!
--------- ...

还没到网络,串口那一步,就是跨电脑运行这个步都被打击信心了

出0入8汤圆

 楼主| 发表于 2017-12-29 12:15:58 | 显示全部楼层
eliterxzgxu 发表于 2017-12-29 12:05
楼主,在命令行里用windeployqt命令可以生成所有需要的dll

5.2版没这个命令

出0入8汤圆

 楼主| 发表于 2017-12-29 12:17:11 | 显示全部楼层
yj_yulin 发表于 2017-12-29 12:03
不熟悉而已,用到的模块当然需要带相应的dll

就一个COMBOX,没啥其他代码
头像被屏蔽

出0入0汤圆

发表于 2017-12-29 12:19:01 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入8汤圆

 楼主| 发表于 2017-12-29 12:24:17 | 显示全部楼层
bbs2009 发表于 2017-12-29 12:19
用 depend 分析 也未必能 找全, 有时还需要 Qt 本身  plugins;
编译一下 Qt Examples  目录 下的例程,  ...

哎,只能慢慢摸索了,不知道IMAC系统下有会出现啥坑

出0入0汤圆

发表于 2017-12-29 12:29:43 来自手机 | 显示全部楼层
把需要的几个dll全放在一起,没有发现什么系统不能用 从xp到win10

出0入8汤圆

发表于 2017-12-29 13:49:27 来自手机 | 显示全部楼层
qt开源的,想怎么折腾都行
如果不想要依赖
可以编译一个不要依赖的版本出来

出0入0汤圆

发表于 2017-12-29 13:57:26 | 显示全部楼层
Qt本身很好,我已经用它搞定了几个大点的项目了,工业控制类的,MIS信息管理系统都有。
QT很强大,用不好那是你自己学技不精而已。

出0入0汤圆

发表于 2017-12-29 14:02:50 | 显示全部楼层
静态编译编译一个qt库就行了,不要太浮躁

出0入8汤圆

 楼主| 发表于 2017-12-29 14:32:53 | 显示全部楼层
shell.albert 发表于 2017-12-29 13:57
Qt本身很好,我已经用它搞定了几个大点的项目了,工业控制类的,MIS信息管理系统都有。
QT很强大,用不好那 ...

你这么说,我就放心了,至少QT能满足我的要求

出0入8汤圆

 楼主| 发表于 2017-12-29 14:37:59 | 显示全部楼层
江南雨絮 发表于 2017-12-29 14:02
静态编译编译一个qt库就行了,不要太浮躁

刚刚开始学,和想的不一样

出0入0汤圆

发表于 2017-12-29 14:56:16 | 显示全部楼层
将QT全部dll都拷到目录,再一个个删,看不顺眼就删,剩下几个就好了

出0入8汤圆

 楼主| 发表于 2017-12-29 15:01:05 | 显示全部楼层
LQS1200 发表于 2017-12-29 14:56
将QT全部dll都拷到目录,再一个个删,看不顺眼就删,剩下几个就好了

全部有 1.2G

出0入0汤圆

发表于 2017-12-29 15:10:27 | 显示全部楼层
没那么大,把d结尾的去掉

出0入8汤圆

 楼主| 发表于 2017-12-29 15:42:40 | 显示全部楼层
LQS1200 发表于 2017-12-29 15:10
没那么大,把d结尾的去掉

一个最简单程序居然要几十M的 dll,伤不起呀

出0入0汤圆

发表于 2017-12-29 17:05:32 来自手机 | 显示全部楼层
正在入坑,学校中

出0入0汤圆

发表于 2017-12-29 17:09:31 | 显示全部楼层
hellowolf 发表于 2017-12-29 15:42
一个最简单程序居然要几十M的 dll,伤不起呀

基本功问题,这锅qt不背。你用mfc 编译一个程序。拷贝到一个只有操作系统到新机器。一样会出类似到问题。

出0入0汤圆

发表于 2017-12-29 17:44:51 | 显示全部楼层
liwey 发表于 2017-12-29 17:09
基本功问题,这锅qt不背。你用mfc 编译一个程序。拷贝到一个只有操作系统到新机器。一样会出类似到问题。 ...

mfc没事的,.net的才要几百兆

出0入0汤圆

发表于 2017-12-29 19:36:28 来自手机 | 显示全部楼层
LQS1200 发表于 2017-12-29 17:44
mfc没事的,.net的才要几百兆

Mfc 静态编译,一般就多几MB

出0入0汤圆

发表于 2017-12-29 21:33:00 来自手机 | 显示全部楼层
不需要跨平台可以选择不用

出0入0汤圆

发表于 2017-12-29 22:37:50 | 显示全部楼层
看来用VC跑几十K程序的OUT了。

出0入0汤圆

发表于 2017-12-29 22:41:16 | 显示全部楼层
把包打好,XP,WIN7,WIN10无缝运行
怎么会有坑?
额,确实有一个,就是用QFILE读网络共享文本文件时,有极少几率读出来全都是0。。。。。

出0入8汤圆

发表于 2017-12-30 08:44:12 | 显示全部楼层
hellowolf 发表于 2017-12-29 15:42
一个最简单程序居然要几十M的 dll,伤不起呀

总比 c#  要装个 几百M的 NET

出0入0汤圆

发表于 2017-12-30 09:21:51 | 显示全部楼层
qt一般都有做好的静态库,你去找找,编译的时候静态编译就行了。

出0入0汤圆

发表于 2017-12-30 09:42:20 | 显示全部楼层
一般还是带dll方便的,不用自己编译,初学者自己编译还是复杂了。
lz这样子的问题本身主要出在自己没学习好上面(http://doc.qt.io/qt-5/windows-deployment.html),;qt有自己的套路,熟悉了就好,文档什么的至少应该过一次,基础都没掌握出问题那是太正常了。
qt的缺点除了编译后体积大了点,其它基本没什么大问题,小细节有些可能封装得不够好,不过因为是C++,当它没处理好时,你完全可以直接按当前系统的办法来做

出0入0汤圆

发表于 2017-12-30 12:56:49 | 显示全部楼层
微软的.NET才是大坑

出100入101汤圆

发表于 2017-12-31 13:23:09 | 显示全部楼层
bbs2009 发表于 2017-12-29 12:08
用 BCB 6 或 delphi   6,7 . 包你 win98  到 WIN10  全兼容

这些开发工具也会有控件或DLL缺少问题
头像被屏蔽

出0入0汤圆

发表于 2017-12-31 13:44:20 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入0汤圆

发表于 2017-12-31 19:34:46 | 显示全部楼层
建议楼主装个 everything ,提示少哪个dll直接搜出来放进去就行了。没那么复杂。

出0入0汤圆

发表于 2018-1-1 02:11:10 | 显示全部楼层
meirenai 发表于 2017-12-31 19:34
建议楼主装个 everything ,提示少哪个dll直接搜出来放进去就行了。没那么复杂。 ...

everything
用了很久了,确实好用,5星星推荐

出0入0汤圆

发表于 2018-1-1 02:12:14 | 显示全部楼层
另外我也在做串口,
试了下用python +wxpython+pyserail
可以考虑弄下

出0入0汤圆

发表于 2018-1-1 10:11:54 来自手机 | 显示全部楼层
duxingkei 发表于 2018-1-1 02:12
另外我也在做串口,
试了下用python +wxpython+pyserail
可以考虑弄下

我也推荐这个方案

出0入0汤圆

发表于 2018-1-1 13:23:27 | 显示全部楼层
觉得QT开发windows麻烦 可以直接调用系统API 比如这本书:基础的GUI都可以实现,而且好像是几KB的大小
https://www.amobbs.com/forum.php ... B%E7%A8%8B%E5%BA%8F

串口,网络...其他都可以调用系统API

C++会点 这都不叫事

QT 强大的地方在于它的库,还有它使用的是C++,可以直接使用第三方库,丰富起来就爽的一批

出0入17汤圆

发表于 2018-1-1 15:09:04 来自手机 | 显示全部楼层
ywlzh 发表于 2018-1-1 13:23
觉得QT开发windows麻烦 可以直接调用系统API 比如这本书:基础的GUI都可以实现,而且好像是几KB的大小
http ...

QT 怎么入门,有C++基础?

出0入0汤圆

发表于 2018-1-1 15:19:22 | 显示全部楼层
radar_12345 发表于 2018-1-1 15:09
QT 怎么入门,有C++基础?

没有C++基础 仅适用QT内的东西不用第三方库,短期内看不出差别  当你程序长期运行不关机 这个时候必须考虑内存泄露了

有C++基础的话 这些都可以避免 还有一个重要的点就是看源代码至少知道这个关键字的作用,怎么使用,为什么使用。

出0入0汤圆

发表于 2018-1-2 11:51:08 | 显示全部楼层
本帖最后由 ckhf 于 2018-1-2 11:55 编辑


我也用QT做一些PC自测软件(基于串口),动态库的处理的话,你拷贝出来单独运行,少啥加啥(运行时会提示--网上也有软件可以测试你的软件用到哪些库的,我用的是Process Explore),,最后用Enigma Virtual Box 打包成exe;这两个软件网上找吧

出0入0汤圆

发表于 2018-1-2 12:50:40 | 显示全部楼层
win应用用VC吧,除非你想准备跨平台

出0入0汤圆

发表于 2018-1-2 14:12:03 | 显示全部楼层
不坑啊,需要vs开发不需要这么多动态库是应为系统自带了。其是qt 很方便的

出0入0汤圆

发表于 2018-1-2 14:25:16 | 显示全部楼层

5.3版本才有这个工具,你的差了一点点
并且5.3可以在XP下用

出0入0汤圆

发表于 2018-1-2 14:35:48 | 显示全部楼层
QT 主要是跨平台,如果不是跨平台肯定.net 方便快捷!

出0入8汤圆

 楼主| 发表于 2018-1-2 19:22:44 | 显示全部楼层
ljt80158015 发表于 2018-1-2 14:35
QT 主要是跨平台,如果不是跨平台肯定.net 方便快捷!

.net 太容易破解了,而且还能反编译出代码,都不敢用

出0入0汤圆

发表于 2018-1-3 08:07:41 | 显示全部楼层
hellowolf 发表于 2018-1-2 19:22
.net 太容易破解了,而且还能反编译出代码,都不敢用



加密后  就不能反编译了。你代码很值钱吗?  现在很少破解的吧

出0入8汤圆

 楼主| 发表于 2018-1-3 09:08:09 | 显示全部楼层
ljt80158015 发表于 2018-1-3 08:07
加密后  就不能反编译了。你代码很值钱吗?  现在很少破解的吧

打算写一个值钱的软件
不过是行业专用的,还是预防一下吧

出0入0汤圆

发表于 2018-1-3 09:21:04 | 显示全部楼层
hellowolf 发表于 2018-1-3 09:08
打算写一个值钱的软件
不过是行业专用的,还是预防一下吧

那就用c++吧

出300入477汤圆

发表于 2018-1-3 09:26:16 | 显示全部楼层
hellowolf 发表于 2018-1-3 09:08
打算写一个值钱的软件
不过是行业专用的,还是预防一下吧

行业软件明显应该靠加密狗啊,安全等级能上升非常多!
能不能直接反汇编,或者混淆,只是一个很小的步骤。用了加密狗可以直接把关键算法丢到狗里面运行,外面彻底见不到。这才是最佳手段。
不要说买不起几十块钱一个的加密狗啊,那你的“值钱的软件”也就不必做了

出0入8汤圆

 楼主| 发表于 2018-1-3 15:45:05 | 显示全部楼层
redroof 发表于 2018-1-3 09:26
行业软件明显应该靠加密狗啊,安全等级能上升非常多!
能不能直接反汇编,或者混淆,只是一个很小的步骤 ...

其实也没啥核心算法或者复杂的算法,界面也不复杂!
主要还是花时间和精力而已,
大公司不愿做,小公司不愿投入,适合一二个人敲敲打打
但是是能防就防吧!

出0入0汤圆

发表于 2018-1-3 17:01:18 来自手机 | 显示全部楼层
C#开发最好

出0入0汤圆

发表于 2018-1-4 12:57:07 | 显示全部楼层
bbs2009 发表于 2017-12-29 12:08
用 BCB 6 或 delphi   6,7 . 包你 win98  到 WIN10  全兼容

这个确实

出10入46汤圆

发表于 2018-1-27 08:41:45 | 显示全部楼层
Qt 如果是个坑。 那VS岂不是个大坑,windows 是个超大坑。
那还是不要学了。

学习切记浮躁。 万事先问谷歌.

6楼已经给出答案了。  5.8 版本目前是主流。 自用完全可以安装5.10

出0入0汤圆

发表于 2018-2-19 23:52:14 来自手机 | 显示全部楼层
shell.albert 发表于 2017-12-29 13:57
Qt本身很好,我已经用它搞定了几个大点的项目了,工业控制类的,MIS信息管理系统都有。
QT很强大,用不好那 ...

你这版权咋搞

出0入0汤圆

发表于 2018-2-20 07:24:51 来自手机 | 显示全部楼层
ericdai 发表于 2018-2-19 23:52
你这版权咋搞

版权问题不大吧,如果你不修改Qt本身源码,那你只要申明下就行了。

出0入0汤圆

发表于 2018-2-20 12:15:41 来自手机 | 显示全部楼层
还是用delphi吧

出0入0汤圆

发表于 2018-2-20 15:18:34 | 显示全部楼层
qtcn.org一般有做好的静态库,配置好了,编译就是了,程序也不大,没感觉怎么不方便。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-26 10:33

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表