所以我是Windows的新手,这可能是一个非常无聊的问题。
我必须创建一个最终将在另一个系统上运行的exe应用程序。在项目中,我需要使用我使用visual studio编译的外部gdal库。据我所知,这将为gdal创建一个dll文件,我将在我的应用程序中通过包含它来引用它。现在,我可以将此文件转移到另一个系统(我怀疑这个)??
我实际上参加了一些竞赛,要求我在最短的时间内运行我的申请。它将通过命令行运行,命令行只需要一些命令行参数。那么我能以任何方式使用这个外部dll文件吗?
答案 0 :(得分:0)
如果您在一台Windows PC上构建DLL并且您的程序在那里工作,当然您可以将exe和DLL复制到另一台Windows PC并在那里运行。
如果Windows不同,您可能会遇到问题。如果您为x64系统构建并且目标系统是32位系统,则您的程序将无法运行。此外,如果您为Windows 7明确构建,则您的程序可能无法在较旧的Windows上运行。对于Visual Studio 2013尤其如此,默认情况下,Visual Studio 2013仅生成最低Windows 7的代码。
因此,在构建程序时,您可能需要根据目标计算机设置项目/构建设置。
复制exe和DLL时,需要将它们放在同一个文件夹中。您可能还需要添加Visual Studio DLL,如C(++)运行时DLL。您可以在Visual Studio安装文件夹的VC\redist
文件夹中找到它们。
答案 1 :(得分:0)
从visual studio中选择发布向导,这将打包您的程序以及任何所需的库。
在发布选项中,您可以设置要编译的Windows版本(我记得)。
然后,您只需在目标计算机上的包文件夹中运行该可执行文件即可安装。
Google visual studio发布向导那里有大量信息。
答案 2 :(得分:0)
是的,您可以在具有相同CPU(32位或64位)的另一台Windows计算机上运行exe / dll文件。
Windows将首先在可执行文件的路径中搜索dll,然后在PATH环境变量中指定的所有路径中搜索。因此,在部署时将exe和dll放在一个目录中。