在Windows上重命名DLL

时间:2009-06-19 11:50:29

标签: windows qt dll qt4

我正在使用Visual Studio 2003在Windows上构建应用程序。

我的应用程序正在链接到第三方库(Qt)。 lib名为qtcore4.lib,dll为qtcore4.dll

我的应用程序是另一个基于Qt的应用程序的插件,它使用相同qtcore4.dll的不同版本。

不幸的是,我不能使用相同版本的Qt作为宿主应用程序,所以我想如果我重命名我的Qt版本的lib和DLL,它会起作用,例如:

qtcore4_my.lib
qtcore4_my.dll

我猜qtcore4.lib是指里面的qtcore4.dll。所以我不确定这会起作用。

1 个答案:

答案 0 :(得分:4)

您应该在同一个应用程序中使用同一个库的两个不同版本。

如果插件接口使用来自QT的类,那么你应该期待一些令人讨厌的问题(如崩溃)。

最简单的方法是重新编译qt并配置构建过程以生成带有其他名称的dll和lib文件。