C ++ - 可执行文件的传输

时间:2016-04-27 18:37:32

标签: c++ windows

我在C ++中构建了这个非常简单的基于多线程的基于winsock tcp的多用户聊天。

我个人正在运行一个32位的Windows 7版本,聊天工作正常,现在我想在我的局域网中的不同计算机之间进行测试,仅为示例,我想在另一台内运行我的client.exe文件计算机,运行64位的Windows 7。

所以在这之前我有几个问题:

  1. 首先假设两个计算都运行x86架构传输这些.exe文件并在不同的计算机上运行它们应该不是问题吗?
  2. 现在我的第二个问题是缺少dll,当尝试在另一台计算机上执行我的client.exe文件时,弹出了丢失的“MSVCR120.dll”DLL错误消息。这实际上是有意义的,因为计算机可能是架构兼容的,但可能有不同的dll。所以我的问题是,如果在我的C ++ Client.exe文件源代码中,我将加载MSVCR120.dll并将其包含在我的Client.exe文件的文件夹中,这会解决我的问题吗?

2 个答案:

答案 0 :(得分:2)

您有两种选择:

  1. 为包含VC ++的exe创建安装包 redistribuables。
  2. 使用as a static library中编译的VC ++运行时编译您的exe。
  3. 在第二种情况下,您不需要安装包,只需复制目标计算机上的exe并从那里运行它。

答案 1 :(得分:0)

如果您使用visual studio构建程序,则需要安装Microsoft redistribuables:https://support.microsoft.com/en-us/kb/2977003

此致