hellowolf 发表于 2017-12-29 11:56:23

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



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


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

bbs2009 发表于 2017-12-29 12:02:05

javenreal 发表于 2017-12-29 12:02:27

qt开发安卓是万人坑,各种控件真是太差了。

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

yj_yulin 发表于 2017-12-29 12:03:58

不熟悉而已,用到的模块当然需要带相应的dll

javenreal 发表于 2017-12-29 12:04:10

另外,动态编译的话,把要的dll复制到exe下面就可以了,但是要注意一个很严重的问题,他的dll分为vs版和mingw版,如果复制错了,照样运行不起来而报的错误很奇怪。

eliterxzgxu 发表于 2017-12-29 12:05:01

楼主,在命令行里用windeployqt命令可以生成所有需要的dll

avr-arm 发表于 2017-12-29 12:05:14

感觉开发win上的程序本身就是大坑。{:lol:}
从xp一路到win10,没有几个程序是全兼容的。

bbs2009 发表于 2017-12-29 12:06:35

bbs2009 发表于 2017-12-29 12:08:03

hellowolf 发表于 2017-12-29 12:12:55

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

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

hellowolf 发表于 2017-12-29 12:15:58

eliterxzgxu 发表于 2017-12-29 12:05
楼主,在命令行里用windeployqt命令可以生成所有需要的dll

5.2版没这个命令

hellowolf 发表于 2017-12-29 12:17:11

yj_yulin 发表于 2017-12-29 12:03
不熟悉而已,用到的模块当然需要带相应的dll

就一个COMBOX,没啥其他代码

bbs2009 发表于 2017-12-29 12:19:01

hellowolf 发表于 2017-12-29 12:24:17

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

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

hongfadg 发表于 2017-12-29 12:29:43

把需要的几个dll全放在一起,没有发现什么系统不能用 从xp到win10

canspider 发表于 2017-12-29 13:49:27

qt开源的,想怎么折腾都行
如果不想要依赖
可以编译一个不要依赖的版本出来

shell.albert 发表于 2017-12-29 13:57:26

Qt本身很好,我已经用它搞定了几个大点的项目了,工业控制类的,MIS信息管理系统都有。
QT很强大,用不好那是你自己学技不精而已。

江南雨絮 发表于 2017-12-29 14:02:50

静态编译编译一个qt库就行了,不要太浮躁

hellowolf 发表于 2017-12-29 14:32:53

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

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

hellowolf 发表于 2017-12-29 14:37:59

江南雨絮 发表于 2017-12-29 14:02
静态编译编译一个qt库就行了,不要太浮躁

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

LQS1200 发表于 2017-12-29 14:56:16

将QT全部dll都拷到目录,再一个个删,看不顺眼就删,剩下几个就好了

hellowolf 发表于 2017-12-29 15:01:05

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

全部有 1.2G

LQS1200 发表于 2017-12-29 15:10:27

没那么大,把d结尾的去掉

hellowolf 发表于 2017-12-29 15:42:40

LQS1200 发表于 2017-12-29 15:10
没那么大,把d结尾的去掉

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

谁啊 发表于 2017-12-29 17:05:32

正在入坑,学校中

liwey 发表于 2017-12-29 17:09:31

hellowolf 发表于 2017-12-29 15:42
一个最简单程序居然要几十M的 dll,伤不起呀

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

LQS1200 发表于 2017-12-29 17:44:51

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

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

xivisi 发表于 2017-12-29 19:36:28

LQS1200 发表于 2017-12-29 17:44
mfc没事的,.net的才要几百兆

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

huangqi412 发表于 2017-12-29 21:33:00

不需要跨平台可以选择不用

stdio 发表于 2017-12-29 22:37:50

看来用VC跑几十K程序的OUT了。

hmd420304805 发表于 2017-12-29 22:41:16

把包打好,XP,WIN7,WIN10无缝运行
怎么会有坑?
额,确实有一个,就是用QFILE读网络共享文本文件时,有极少几率读出来全都是0。。。。。

kebaojun305 发表于 2017-12-30 08:44:12

hellowolf 发表于 2017-12-29 15:42
一个最简单程序居然要几十M的 dll,伤不起呀

总比 c#要装个 几百M的 NET{:titter:}

edaworld 发表于 2017-12-30 09:21:51

qt一般都有做好的静态库,你去找找,编译的时候静态编译就行了。

yj_yulin 发表于 2017-12-30 09:42:20

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

modbus 发表于 2017-12-30 12:56:49

微软的.NET才是大坑

fengyunyu 发表于 2017-12-31 13:23:09

bbs2009 发表于 2017-12-29 12:08
用 BCB 6 或 delphi   6,7 . 包你 win98到 WIN10全兼容

这些开发工具也会有控件或DLL缺少问题

bbs2009 发表于 2017-12-31 13:44:20

meirenai 发表于 2017-12-31 19:34:46

建议楼主装个 everything ,提示少哪个dll直接搜出来放进去就行了。没那么复杂。

duxingkei 发表于 2018-1-1 02:11:10

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

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

duxingkei 发表于 2018-1-1 02:12:14

另外我也在做串口,
试了下用python +wxpython+pyserail
可以考虑弄下

VAN 发表于 2018-1-1 10:11:54

duxingkei 发表于 2018-1-1 02:12
另外我也在做串口,
试了下用python +wxpython+pyserail
可以考虑弄下

我也推荐这个方案

ywlzh 发表于 2018-1-1 13:23:27

觉得QT开发windows麻烦 可以直接调用系统API 比如这本书:基础的GUI都可以实现,而且好像是几KB的大小
https://www.amobbs.com/forum.php?mod=viewthread&tid=5513388&highlight=windows%2B%E7%A8%8B%E5%BA%8F

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

C++会点 这都不叫事

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

radar_12345 发表于 2018-1-1 15:09:04

ywlzh 发表于 2018-1-1 13:23
觉得QT开发windows麻烦 可以直接调用系统API 比如这本书:基础的GUI都可以实现,而且好像是几KB的大小
http ...

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

ywlzh 发表于 2018-1-1 15:19:22

radar_12345 发表于 2018-1-1 15:09
QT 怎么入门,有C++基础?

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

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

ckhf 发表于 2018-1-2 11:51:08

本帖最后由 ckhf 于 2018-1-2 11:55 编辑

hellowolf 发表于 2017-12-29 15:01
全部有 1.2G

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

reynold007 发表于 2018-1-2 12:50:40

win应用用VC吧,除非你想准备跨平台

richards 发表于 2018-1-2 14:12:03

不坑啊,需要vs开发不需要这么多动态库是应为系统自带了。其是qt 很方便的

idle 发表于 2018-1-2 14:25:16

hellowolf 发表于 2017-12-29 12:15
5.2版没这个命令

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

ljt80158015 发表于 2018-1-2 14:35:48

QT 主要是跨平台,如果不是跨平台肯定.net 方便快捷!

hellowolf 发表于 2018-1-2 19:22:44

ljt80158015 发表于 2018-1-2 14:35
QT 主要是跨平台,如果不是跨平台肯定.net 方便快捷!

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

ljt80158015 发表于 2018-1-3 08:07:41

hellowolf 发表于 2018-1-2 19:22
.net 太容易破解了,而且还能反编译出代码,都不敢用



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

hellowolf 发表于 2018-1-3 09:08:09

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

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

ljt80158015 发表于 2018-1-3 09:21:04

hellowolf 发表于 2018-1-3 09:08
打算写一个值钱的软件
不过是行业专用的,还是预防一下吧

那就用c++吧

redroof 发表于 2018-1-3 09:26:16

hellowolf 发表于 2018-1-3 09:08
打算写一个值钱的软件
不过是行业专用的,还是预防一下吧

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

hellowolf 发表于 2018-1-3 15:45:05

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

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

R8C 发表于 2018-1-3 17:01:18

C#开发最好

wukongli 发表于 2018-1-4 12:57:07

bbs2009 发表于 2017-12-29 12:08
用 BCB 6 或 delphi   6,7 . 包你 win98到 WIN10全兼容

这个确实

gonboy 发表于 2018-1-27 08:41:45

Qt 如果是个坑。 那VS岂不是个大坑,windows 是个超大坑。
那还是不要学了。

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

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

ericdai 发表于 2018-2-19 23:52:14

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

你这版权咋搞

liwey 发表于 2018-2-20 07:24:51

ericdai 发表于 2018-2-19 23:52
你这版权咋搞

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

FireBrain 发表于 2018-2-20 12:15:41

还是用delphi吧

edaworld 发表于 2018-2-20 15:18:34

qtcn.org一般有做好的静态库,配置好了,编译就是了,程序也不大,没感觉怎么不方便。
页: [1]
查看完整版本: 用QT开发WIN应用程序是不是个大坑?