msvcrt相关内容

在Mingw上启动MainCRT之前的C函数?

void start() { stuff(); //code before mainCRTStartup mainCRTStartup(); } int main() { //other code } 在Visual C++中,它可以很好地编译,并且在Main之前调用函数“Stuff()”。如何在“mainCRTStartup()”之前调用“Stuff()”?在Mingw(操作系统:Windo ..
发布时间:2022-06-17 11:49:53 其他开发

PyCharm:msvcrt.kbhit() 和 msvcrt.getch() 不起作用?

我尝试从 PyCharm 中的控制台读取一个字符(不按 Enter),但无济于事.msvcrt.getch() 函数会停止代码,但不会对按键做出反应(甚至回车),并且 msvcrt.kbhit() 总是返回 0.例如这个代码什么也不打印: 导入 msvcrt而1:如果 msvcrt.kbhit():打印“阅读"打印“完成" 我使用的是 Windows 7,PyCharm 3.4(空闲时也是如此 ..
发布时间:2022-01-08 10:02:59 Python

Visual Studio 2015 运行时依赖项或如何摆脱 Universal CRT?

使用 Visual Studio 2015 编译了几个 .dll,并尝试在一些较旧的 Windows 7/64 位上进行部署.还试图猜测应用程序启动和复制 MSVCP140.DLL & 需要哪些 dll.VCRUNTIME140.DLL - 但应用程序无法加载 vs2015 dll.开始分析出了什么问题 - 依赖遍历器显示了来自以下 dll 的依赖: API-MS-WIN-CRT-MAT​​H- ..
发布时间:2021-12-30 17:38:25 C/C++开发

Windows malloc 替换(例如 tcmalloc)和动态 crt 链接

使用多个 DLL 和 QT 的 C++ 程序应配备 malloc 替换(如 tcmalloc) 用于可验证由 Windows malloc 引起的性能问题.对于 linux,没有问题,但是对于 windows,有几种方法,我觉得它们都没有吸引力: 1.将新的 malloc 放入 lib 并确保先链接它 (其他 SO 问题) 这有一个缺点,例如 strdup 仍将使用旧的 malloc, ..
发布时间:2021-12-25 16:06:23 其他开发

我应该用我的应用程序重新分发 msvcrt.dll 吗?

如果应用程序的某些库动态依赖于 msvcrt.dll,我是否应该使用我的应用程序重新分发 msvcrt.dll 并使用私有 dll?IE.系统的 msvcrt.dll(dll 地狱)是否可能存在任何不兼容问题?应用程序针对 Windows Server 系统. 解决方案 msvcrt - 是 Microsoft Visual C++ 运行时的动态库. 在 Windows 中使用 C ..
发布时间:2021-12-25 15:44:41 其他开发

为什么我的应用程序需要 Visual C++ Redistributable 包

我正在 Visual Studio 中编写一个简单的 C++ 应用程序.它还有一个安装项目.它在我的开发机器上运行良好,但是当我在用户机器上安装这个应用程序时,它需要 Visual C++ Redistributable Package.我想知道为什么我的应用程序需要 C++ Redistributable?标准 C++ 运行时库随 Windows 一起提供,不是吗? 解决方案 Micro ..

timegm 跨平台

我使用的是 Visual Studio c++ Compiler (2010),但该库具有不同的 ANSI C 和 POSIX 库函数实现. ANSI C 函数和 Windows CRT 实现有什么区别?例如,tzset() 和 _tzset() 或 setenv() 和 _setenv() 之间有什么区别?似乎以同样的方式做同样的事情...... 我正在使用 msvc (2010), ..
发布时间:2021-12-22 18:42:45 C/C++开发

如何强制 C++ 编译器使用特定的 CRT 版本?

我使用 VS2008 开发 COM dll,默认使用 CRT 版本 9但我使用的是与新 CRT 不兼容的 TSF(文本服务框架).我认为解决方案是使用兼容的,那么如何指定 CRT 版本? 解决方案 我非常乐意加入不要手动更改您链接的 CRT 版本的建议.但是,如果出于某种原因(我无法想象)这对您来说是正确的做法,那么这样做的方法是更改​​ manifest 适用于您的项目. 首先确保 ..
发布时间:2021-12-22 18:30:12 C/C++开发

如何从 fopen FILE 结构中获取文件 HANDLE?

fopen 函数返回一个指向 FILE 结构的指针,应该将其视为不透明值,而不处理其内容或含义. 在 Windows 上,C 运行时是 Windows API 的包装器,fopen 函数依赖于 CreateFile 函数.CreateFile 函数返回一个 HANDLE,供其他 Windows API 使用. 现在,我需要在使用 fopen 和 FILE* 的库的深处使用 Window ..
发布时间:2021-12-18 08:08:40 其他开发

我应该用/MD 还是/MT 编译?

在 Visual Studio 中,有编译标志/MD 和/MT,可让您选择所需的 C 运行时库类型. 我了解实现上的差异,但我仍然不确定该使用哪一个.有什么优点/缺点? 我听说/MD 的一个优点是它允许某人更新运行时(例如可能修补安全问题)并且我的应用程序将从此更新中受益.尽管对我来说,这几乎像是一个非功能:我不希望人们在不让我针对新版本进行测试的情况下更改我的运行时! 一些我很 ..
发布时间:2021-12-07 13:49:33 C/C++开发

解决 LNK4098:defaultlib 'MSVCRT' 与

此警告: LINK : 警告 LNK4098: defaultlib 'MSVCRT' 冲突使用其他库;使用/NODEFAULTLIB:library 是 Visual Studio 中相当常见的警告.我想了解它的确切原因以及处理它的正确方法(如果有的话). 这出现在调试版本中,使用 /MDd 编译.该项目链接到诸如 windows Version.dll 和 pdh.dll 之类的东西 ..
发布时间:2021-12-07 13:46:08 其他开发

如果我已经安装了 Microsoft VC++ 2017 运行时,是否还需要安装 Microsoft VC++ 2015 运行时可再发行组件?

来自我阅读的内容 这些帖子 和其他地方,关于为什么我无法安装 Microsoft VC++ 的问题如果我已经安装了 Microsoft VC++ 2017 运行时,则 2015 运行时可再发行. 这个“无法安装"的原因是因为一旦你安装了Microsoft VC++ 2017,就不需要安装2015版本,因为2017包含2015.我说得对吗? 其次,更关键的是,从现在开始,如果我安装了更高 ..
发布时间:2021-09-25 20:32:27 其他开发

按退出键退出循环

我试图通过按转义键退出循环,但我的程序不起作用.有没有办法做到这一点?我的代码: 导入win32api导入 win32con导入时间从 msvcrt 导入 kbhit,getchdef clickerleft(x,y):"""点击给定位置 x,y输入:x -- 以像素为单位的水平位置,从左上角位置开始y -- 以像素为单位的垂直位置,从左上角开始"""win32api.SetCursorPos( ..
发布时间:2021-09-25 20:26:59 Python

WaitForSingleObject 在文件句柄上?

当您对使用 CreateFile() 或 _get_osfhandle() 创建的句柄调用 WaitForSingleObject() 时会发生什么?> 出于不值得解释的原因,我想使用 WaitForSingleObject() 来等待我用 _get_osfhandle(fd) 创建的 HANDLE,其中 fd 来自对 _open() 的常规调用.这可能吗? 我已经在实践中尝试过,在某些机 ..
发布时间:2021-09-25 19:46:15 其他开发

为什么 _get_heap_handle 等于 GetProcessHeap?

根据这篇文章,CRT 使用单独的堆(是不是私有堆?),但是这个小例子表明CRT堆和默认堆是一样的: 处理堆[64];DWORD heapCount = GetProcessHeaps(64, heaps);for (int i = 0; i 在什么情况下 GetProcessHeap 和 _get_heap_handle 返回不同的句柄? //用VS2012编译(平台工具集v110) ..
发布时间:2021-09-25 18:39:16 其他开发

在没有 MSVCRT 运行时的 Visual Studio 2012 中编译 C

Visual Studio 2012(及更早版本)能够编译 C 代码.普通 C,而不是 C++.如果您想避免运行时混乱,这将是一个很好的功能.我想编译纯 C 二进制文件,并希望没有MSVCRT 运行时. 添加/TC(编译为C)选项后,我希望得到一个只有基本依赖项(如kernel32 和ntdll)的二进制文件.但相反,这是链接: 我们想使用 VS 2012 而不是运行时.GCC 编译器 ..
发布时间:2021-09-19 18:43:05 C/C++开发

如何检查从 VC++ 生成的二进制 exe 的运行时库类型

用于对现有构建(二进制文件、exe、dll、lib 集)进行故障排除. 有没有办法使用 SDK 或其他实用程序中的命令行工具来快速检查编译目标文件所针对的运行时库类型? 例如,给定一个 .dll 很明显它是针对动态运行时编译的(但如果它是 Debug 或 Release 版本,它仍然不明显). 虽然在 .exe 的情况下更难(确定是否使用了动态/静态和调试/发布). (我的 ..
发布时间:2021-09-18 19:17:58 其他开发

VC++:代码在 VS2010 中有效,在 VS2013 中中断

编辑:与投票结束时提到的问题不同,这里的违规代码是 CRT 代码,不是我的.即使它有问题(我很确定它没有),我也无法修复它的来源. 我们有一些使用 CRT 内部结构的遗留内存泄漏跟踪代码(没什么特别的,本质上是 _CrtMemBlockHeader,它是 排序记录).在尝试从 VS2010 迁移到 VS2013 时,代码似乎会导致偶发的构建失败,并且可以将违规部分简化为: #include ..
发布时间:2021-09-18 19:17:07 其他开发

VS2015 UCRT 源文件在哪里?

TL;DR:我在哪里可以找到在调试时被引用为 d:\th\minkernel\crts\ucrt\... 的 MS 源文件Visual Studio 2015. 我正在尝试调试 CRT 调用以查看 MS 实际在做什么,不幸的是,ucrt 源文件似乎在安装 VS2015 时不可用.至少我在 C:\Program Files (x86)\Microsoft Visual Studio 14.0\ ..
发布时间:2021-09-18 19:16:47 其他开发