问题标签 [crt]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
17191 浏览

c - crt0.o 和 crt1.o -- 有什么区别?

最近我一直在尝试调试一些低级工作,但我找不到crt0.S编译器(avr-gcc),但我确实找到了一个crt1.S(与相应的.o文件相同)。

这两个文件有什么区别?是crt1完全不同还是什么?它们似乎都与“引导”(设置stack frame等)有关,但为什么要区分呢?

0 投票
4 回答
15627 浏览

crt - 如何在没有完整的 Visual Studio 2005 的情况下安装 VC80CRT 调试运行时?

我无法运行调试 sdk 应用程序,因为它需要 CRT 的 VC 8 和 VC 9 版本。但它只需要Visual Studio 2008 for plugin dev,这正是我所需要的。

如何将 2005 年的调试运行时安装到 Windows7 机器上?我无法弄清楚如何让它们在本地运行应用程序,也无法在没有受信任的安装程序的情况下将任何内容复制到 winSxS 文件夹中。

0 投票
2 回答
291 浏览

c++ - fstream 文件 I/O 问题 - 何时关闭文件流

如果初始打开失败,我正在尝试确定是否需要在 fstream 对象上调用 close。

IE

这里应该在哪里调用close - 应该始终调用 [2] 还是仅在 open 成功 [1] 时调用?

我可能在这里过头了,但是来自通常执行此操作的 Windows API 方式,我有CloseHandle( ... ); 嵌入我的脑海:-)

0 投票
3 回答
25148 浏览

c++ - fscanf / fscanf_s 行为差异

我对以下行为差异感到困惑:

结果不依赖于调用顺序(即,首先调用 fscanf_s,您将首先获得空字符串)。在 VC++ - VS2005 上编译。任何人都可以复制吗?谁能解释一下?

谢谢!

0 投票
1 回答
235 浏览

windows - 跨进程边界的 CRT 类型

我正在从 activeX 控件中拖放。在拖动时,我提供了一个 CComQIPtr,它实现了将信息传递到放置目标的 COM 方法。放置时,放置目标的进程调用我的 COM 方法来获取信息。

我是否不允许在该接口边界附近使用 CRT 类型或指向 CRT 类型的指针?我希望我的 IDataObject 有一个私有的 std::list 和一些 std::strings,并且在接口的外部可以调用可以访问这些私有成员的 COM 方法。

我认为这没关系,因为我实际上并没有跨边界传递CRT 类型。

MSDN:跨 DLL 边界传递 CRT 对象的潜在错误

0 投票
5 回答
22583 浏览

c++ - C++ - 使用 _CrtDumpMemoryLeaks() 进行内存泄漏测试 - 不输出行号

我正在使用 Visual Studio 2010 中的 SDL 开发游戏。我遇到了_CrtDumpMemoryLeaks()宏,并认为我会试一试。调用_CrtDumpMemoryLeaks()确实将内存泄漏打印到输出窗口,但它没有显示它发生的位置。

我已经阅读了Memory Leak Detection Enabling上的 MSDN 文章,它解释说,如果我定义_CRTDBG_MAP_ALLOC它应该输出违规语句的行号。这在我的情况下不会发生。(但是,如果我直接使用 malloc() 而不是使用'new',我就可以让它工作)。

编码:

输出如下:

p>

如果_CrtDumpMemoryLeaks()在使用“新”进行分配时无法输出行号,那么我们将不胜感激提出其他实现类似行为的方法的建议。

0 投票
2 回答
6905 浏览

visual-studio - Visual Studio 链接错误。订单包含在哪个 MFC、CRT 中?

这个问题已被多次提出,但 Visual Studio 从未停止挑战我。

我们有一个应用程序应该是自给自足的,即不依赖于任何第三方库。这就是我们使用MT(d)代码生成标志静态构建所有内容的原因。

该应用程序依赖于Qtzlib和。所有这些库都构建为带有. 该应用程序还使用了一些-related 代码,因此我们还必须对其进行链接。OpenSSLDCMTKMT(d)MFC

MFC 包含在

我在某处读到这应该是每个文件中的第一个包含,但我不确定它是否属实。无论如何,该行并不包含在每个文件中,只有一个文件包含它。

以下是与链接相关的错误:

这是链接器输出

我阅读了许多网站上的许多主题以及 MSDN 的 KB 中的这篇文章。但他们没有帮助我,因为他们都一直说 MFC 库应该在 CRT 之前链接,但我找不到改变链接顺序的方法。

任何帮助是极大的赞赏。

编辑1:使用这个线程的技巧实际上解决了问题,但我仍然想知道这里出了什么问题。

编辑 2:在 Windows 7 和 Qt 4.6.3 上使用 Visual Studio 2008 SP1

0 投票
19 回答
5814 浏览

c++ - 如何使 C++ EXE 更大(人工)

我想制作一个比它应该大得多的虚拟 Win32 EXE 文件。所以默认情况下,样板 Win32 EXE 文件为 80 KB。我想要一个 5 MB 的空间来测试其他一些实用程序。

第一个想法是添加资源,但事实证明,在内存分配方面,嵌入式资源与 5 MB 代码不同。我在想我可以引用一个大型库并最终得到一个巨大的 EXE 文件?如果不是,也许编写几千个类似的方法,如 AddNum1、AddNum2 等?

非常感谢任何简单的想法。

0 投票
2 回答
332 浏览

c++ - 让 Visual Studio 2008 使用 8.0 CRT 库?

有没有一种简单的方法可以让 Visual Studio 2008 在我的 c++ 项目中使用 8.0 CRT 库?我真的不想安装 Visual Studio 2005 只是为了做到这一点。谢谢

0 投票
2 回答
2134 浏览

.net - 为什么 .NET 4.0 在加载非托管 DLL 时会出现“CRT 未初始化”错误?

我有一个由第 3 方提供的 DLL 以及包装它的随附 .NET 2.0 程序集。如果我使用 VS2008 创建一个 .NET 3.5 项目,我可以通过包装程序集调用 DLL 并且它工作正常。但是,如果我使用 VS2010 创建一个等效的 .NET 4.0 项目,那么R6030 - CRT not initialized在加载 DLL 时我会在消息框中收到错误消息。

我能做些什么来让它在 .NET 4.0 项目中工作吗?可能与 CAS 更改有关,还是与其他有关?

我现在正在继续我在 VS2008 中的工作,但最好了解正在发生的事情......