fgets 提供资产,试图重新分发 vs2010 MFC 应用程序
fgets gives assetion, trying to redistribute vs2010 MFC application
>我有一个简单的应用程序,它可以读取一些文本文件并进行一些计算并写入一些文本文件。 在我的开发机器(Server2008R2 VC++ 2010)上完美运行。 我无法让它在 Win7 机器上运行,即使认为我已经安装/运行了 vs2010 重新分发 x86。
我得到的第一个错误是缺少 mfc100ud.dll(是的,我正在使用调试,如果我尝试发布它只会崩溃,因为调试会告诉您出了什么问题)。 我把 mfc100ud.dll 放在应用程序的目录中,现在 fgets 断言如下所示。 str 不为空,文件已成功打开。
我错过了什么?
我的目标是只在 Win7 计算机上运行 MFC 应用程序,而无需安装 vs2010。
另一个考虑因素,我使用 MFC 的唯一原因是 COLETimeDate 功能。 我一直在寻找替代方案,但没有找到任何可行或易于使用的东西。
谢谢。
断言错误
如果文件流指针(由 fopen 提供)为 NULL,则会发生此错误。使用 fopen 后是否有可能没有任何错误检查?
基本上使用"静态链接"到 MFC 和 CRT。比不需要安装和复制任何运行时文件。
可再发行组件程序集仅适用于发布版本。如果确实要分发调试版本,则有两个选项:
- 静态链接应用,因此不需要任何共享 DLL(如 MFC100ud.dll) 与应用
- 一起分发(在应用文件夹中)所有依赖 DLL。 可以使用依赖项检查依赖项.exe
相关文章:
- 试图在visual studio上用C++创建一个桌面应用程序
- FFmpeg:制作一个应用程序比直接使用ffmepg更好吗
- 在C应用程序中运行C++(带有STL)函数
- 使用VerQueryValue检索应用程序的文件描述
- Qt C++静态thread_local QNetworkAccessManager是线程应用程序的好选择吗
- 使用调试/崩溃报告将应用程序部署到客户端
- C++控制台应用程序阻止退出
- 码头化的C++应用程序是否向后兼容早期的内核版本
- 将应用程序从32位移植到64位时出现问题
- 如何改变c++应用程序的视觉效果
- 在VS2010控制台应用程序中链接Windows.h (WNDCLASSEX)代码
- fgets 提供资产,试图重新分发 vs2010 MFC 应用程序
- VS2010 WITHOUT.NET中的Windows窗体应用程序
- VS2010错误LNK2001:MFC静态应用程序中未解析的外部
- dll在VS2010项目中工作良好,但在VS6应用程序中提供访问违规
- 在Windows 7上构建的c++应用程序(使用VS2010 IDE和VS2008工具集)可以在Windows 7上运行
- 在VS2010中编译带有长双精度的Windows c++应用程序
- VS2010 Qt4设计器插件链接VS2010应用程序
- 使用 VS2010 构建的可执行文件不是有效的 win32 应用程序;bindump 说它是一个 DLL
- Visual Studio 2008 - 为什么我的 VS2010 本机 C++ 应用程序不会突然启动,从而出现并排错误?