编译的程序在其他窗口PC上停止响应
Compiled program stops responding on other windows pc's
我在VC 14中写了一个程序,该程序在我的PC上完美运行,既可以执行,又是在Visual Studio 2015中进行调试。
但是,当我尝试在另一台PC上运行它时,它停止立即做出响应。使用DEBUG符号,我发现了通过make_unique
或make_shared
失败的类实例化,导致Null指针异常。
我已经检查并确保目标机具有必要的VC 运行时环境,并包括我能想到的任何其他DLL。
我还尝试在构建过程中静态地链接必要的库,但没有改进。
我什至尝试了一个安装程序项目,该项目未检测到其他依赖。
我现在不知所措。我还有什么应该寻找的吗?
验证以下内容。
- 确保您正在构建发布版本。在没有安装视觉工作室的PC上运行调试构建相对较难。
- 确保您具有VC 14运行时的确切版本,包括服务包号。如果您使用VS2015 Update 3,请下载并在目标PC上下载并将其安装在:https://www.microsoft.com/en-us/download/details.aspx?id=53587(正确的平台,32或64)。
- 确保您没有任何有趣的预处理程序:您没有_debug,no _secure_scl等。
P.S。与C运行时的动态链接对于发布构建不是一个好主意。一个问题是,在某些Windows版本上,您甚至无法使用离线安装程序都需要更新CRT,因为最近的CRT取决于某些Windows更新。
相关文章:
- EvtExportLogneneneba API正在将远程计算机的事件日志保存到远程PC本身.如何将其保存到主机
- 如何通过Conan和CMake找到用于pkg配置的.pc文件
- PC中的程序和PHONE中的本机描述应用程序之间的数据连接
- 当服务中的事件被触发时,如何将响应从服务发送回客户端?
- 由于PC显示设置的更改,Qt小部件被部分剪裁
- C++ 信号和插槽不工作:插槽不响应事件
- NodeJs 服务器充斥着 UDP 广播,不发送响应
- C++关于ENUM的问题。我得到的响应比枚举列表大
- 如何在带有 gdb GUI 前端的 ARM gdbserver 的 PC 上执行远程 gdb 会话?
- 网站和C++程序在同一台 Linux PC 上的通信
- 应用程序在打开的简历中捕获视频后没有响应
- 使用 cpprest (Casablanca) 返回 PDF 响应
- 为什么当通过 TCP 发送的消息速率增加时,请求-响应消息对的延迟会降低?
- 在另一台 PC 上执行程序时加载 SDL2 共享库时出错
- 如何使用从处理程序调度的最终回调将响应异步返回给调用方on_read?
- 获取加密的正文响应WinHttp HTTPS
- QtConcurrent - 在发布到 UI 线程的数千个结果中保持 GUI 响应
- 同步读取多个 TCP 响应
- HTTP 响应格式不正确?
- 编译的程序在其他窗口PC上停止响应