欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

qt 怎么预加载dll

更新时间: 2014-01-05 02:43:57 责任编辑: Author_N1

 

Qt 如何预加载Dll?
现在做wince平台的程序开发 用的Qt,界面刷新的时候感觉很慢,但是Vc调试的时候速度很快,
VC调试的时候信息有:

加载模块: ws2.dll
加载模块: winsock.dll
加载模块: lpcrt.dll
加载模块: rpcrt4.dll
加载模块: commctrl.dll
加载模块: shcore.dll
加载模块: ceshell.dll
加载模块: ole32.dll
加载模块: QtCore4.dll
加载模块: QtGui4.dll
加载模块: QtXml4.dll
加载模块: SerializeBasic.dll
加载模块: fpcrt.dll
加载模块: coredll.dll
加载模块: mmtimer.dll
加载模块: aygshell.dll

因此怀疑调试的时候,是预先将qt的各个dll加载到内存里了,但是我现在在main函数里这样写:

QApplication a(argc, argv);

QLibrary libCore("QtCore4.dll");
bool lib = libCore.load();

QLibrary libGui("QtGui4.dll");
lib = libGui.load();

QLibrary libXml("QtXml4.dll");
lib = libXml.load();

QLibrary libSerializeBasic("SerializeBasic.dll");
lib = libSerializeBasic.load();

        QMainWdgt w;
        w.show();


 这样子好像程序还是很快,这样位置有问题?Qt是怎么调用各个dll的呢 QtCore4.dll等等

--参考方法--
这个不是Qt怎么装载dll库, 这个是os loader程序,在你启动qt应用程序的时候,装载的。
--参考方法--
装载器pe文件的输入表来装载对应的dll
--参考方法--
编译期链接的库无需在代码里加载。如果你的应用支持插件DLL,可以用QLibrary来动态加载。
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:43:57
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/13681/
本文WWW.DOC100.NET DOC100.NET版权所有。