gpt4 book ai didi

c++ - QScintilla,示例项目不起作用

转载 作者:太空宇宙 更新时间:2023-11-04 14:28:06 29 4
gpt4 key购买 nike

我想试用 QScintilla。所以我下载并安装了它,没问题。当我运行示例项目时,它说我缺少 QtCored4.dll,所以我将它复制到目录中,然后它说它还需要其他 dll,所以也复制了它们。

最后它给了我一个 Visual C++ 运行时错误。它只是说它以一种不寻常的方式终止。

我知道这很含糊,但这只是状态,没有其他错误消息。代码来自网站,我没有修改。

有人对此有任何线索吗?

既然我遇到了这个问题,我想也许我应该扩展标准的 Qt 文本组件。并尝试制作我自己的组件,如 QScintilla。

编写像 QScintilla 这样的组件有多难?(不查看其源代码)


更新: 所以我在 Qt Creator 下加载了示例项目。将默认配置设置为 Release模式并让它运行。它奏效了。 (很奇怪)。如果我切换到 Debug模式 Qt Creator 说:

Invalid parameter passed to C runtime function.

如果我转到文件系统中的目录(而不是 Qt Creator 中的目录)并运行程序( Release模式),我会收到我在评论中告诉过你的奇怪错误。如果我从 Qt Creator 运行它,它就可以工作。

最佳答案

我对 QScintilla 没有任何问题。我使用 VC++ 2008 从源代码编译了 Qt 4.6。下载 QScintilla-gpl-2.4.1 并解压缩后,我用以下代码编译了它:

cd Qt4
qmake qscintilla.pro
nmake

最后安装了

nmake install
copy %QTDIR%\lib\qscintilla2.dll %QTDIR%\bin

在编译和运行示例时我没有遇到任何问题。

因此,首先检查您的环境变量(我的电脑,右键单击,属性 -> 高级选项卡 -> 环境变量按钮)。检查系统变量部分中的路径。我在这个变量中有 %QTDIR%\bin (c:\Qt\qt-4.6.0\bin)。

其次我想知道您消息中的字母“d”:

QtCored4.dll

如果您执行了文档中描述的所有步骤,您将获得库的发布版本和与 Qt 库的发布版本相关联的示例应用程序的发布版本。而不是调试。

最后 QTextEdit 和 QSyntaxHighlighter 可能足以完成您的任务。查看Syntax Highlighter Example .


对评论的回应

这是某种众所周知的问题(可能是)。因此,如您所见,您有 2 个不同的 Qt 库文件夹

C:\Qt\2009.05\bin;C:\Qt\2009.05\qt\bin 

在你的道路上。第一个文件夹 (...\bin) 中的库是用 VS2008 编译的,第二个文件夹 (...\qt\bin) 中的库是用 MinGW 编译的。应用程序启动时会查找路径变量中的项目。突然,在您的路径变量中具有“错误”库的文件夹出现在具有正确项目的文件夹之前。您可以做的是复制 QtCore4.dll、QtGui4.dll 和您需要与应用程序可执行文件一起放入文件夹的其他库。希望这会有所帮助。

关于这个问题的一些链接:

关于c++ - QScintilla,示例项目不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2080862/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com