草庐IT

malloc_message

全部标签

C: 函数没有更新全局数组(使用 strcpy/malloc)

尝试从Windows中的目录获取文件名。通过名为list_files的函数执行此操作。该函数由于某种原因(或看起来像它)没有做任何事情,因为每当我打印数组时,它都是空的。我之前测试过这段代码,它运行良好。我一直在编码(这本来是一个更长的代码)我注意到每当我以后不得不使用数组时它返回0(什么都没有)voidlist_files();char*filesList[0][254];inti=0,n=0,l=254;chardirectory[]={"C:/Users/test/Downloads/test/"};intmain(){list_files();}voidlist_files()

c - 适用于 Windows 的 MALLOC_TRACE

在我们公司,我们有一个类似于mtrace的内部框架glibc中用于检测内存泄漏的(MALLOC_TRACE)功能。这个框架是为在Windows上运行而编写的,但它在GNU/Linux上运行得不是很好。那么,有人知道可以在Windows、GNU/Linux甚至MacOSX上运行的与mtrace(MALLOC_TRACE)等效的可移植版本吗? 最佳答案 你试过dmalloc吗?http://dmalloc.com/也许我认为在linux上valgrind要好得多 关于c-适用于Windows

c++ - 如何保证当一个进程调用malloc()时,它会立即分配物理内存?

我正在寻找一种方法来为进程预分配内存(物理内存),以便在我调用new/malloc时绝对保证它对C++堆可用。我需要此内存可供我的进程使用,而不管其他进程正在尝试使用系统内存做什么。换句话说,我想将物理内存保留到C++堆中,以便在我调用malloc()时立即可用。以下是详细信息:我正在开发一个实时系统。该系统由几个内存消耗大的进程组成。进程A是关键任务进程,它必须存活下来并且不受任何其他进程的不良行为的影响。它通常适合0.5GB的内存,但有时需要多达2.5GB的内存。其他进程尝试使用任意数量的内存。我担心的是其他进程可能会分配大量内存,耗尽系统中的物理内存储备。然后,当进程A需要更多内

windows - Win32 API - CurrentWindow 到 Message-Only-Window 并返回到原始窗口

我使用SetParent将窗口更改为仅消息窗口,但是当我尝试使用SetParent恢复窗口时,我要么没有恢复窗口,要么出现大量延迟?示例源代码。//Changetomessage-onlyHWNDnewParent=SetParent(currentHandle,HWND_MESSAGE);//ChangebackSetParent(newParent,currentHandle); 最佳答案 您已将参数颠倒过来。要恢复您需要的原始parent:SetParent(currentHandle,newParent);请记住,在这两种情

windows - 在 InnoSetup 的语言文件中获取 [Messages] 值

我知道我可以轻松地在里面获取消息[CustomMessages]AdditionalIcons=blablabla使用此代码:ExpandConstant('{cm:AdditionalIcons}');它获取AdditionalIcons字符串消息。但是,如何在其中获取消息?[Messages]ButtonNext=huhuButtonInstall=bubu我需要的是获取ButtonNext、ButtonInstall和其他值,使用如下代码无法获取这些值:ExpandConstant('{cm:ButtonNext}');如何查询这些值?相关链接InnoSetupScripttip

windows - 命令文件 : translate Windows error message

有没有办法在CMD脚本中检索和显示Windows错误消息的文本?例如,假设MYAPP.EXE返回2(ERROR_FILE_NOT_FOUND)。与此相关的Windows错误消息是:“系统找不到指定的文件”我可以在我的CMD脚本中检索并显示它吗?例如,REMmycmd.cmdMYAPP.EXEECHO%ERRORMESSAGE%谢谢。 最佳答案 假设您的程序返回一个标准窗口systemerrorcode作为退出代码myapp.exenethelpmsg%errorlevel% 关于wind

windows - 为什么 malloc 会覆盖 RSP 和 RSP+8?

您可以阅读有关64位调用约定的信息here.x64函数应该自行清理,但是,当我从.asm调用malloc时,它会覆盖RSP和RSP+8处的值。这似乎是非常错误的。有什么建议吗?publicTestMallocexternmalloc:near.CODEalign8TestMallocprocmovrcx,100h000000018000BDB848C7C100010000movrcx,100hcallmalloc000000018000BDBFE8CCAC0600callmalloc(180076A90h)ret000000018000BDC4C3ret000000018000BDC5

c++ - 奇怪的 malloc 行为不允许在 64 位进程上分配超过 2GB 的内存

这个问题涉及我正在开发的一个程序。我从事的项目要求不通过网络发送行集或大于2GB的行(网络不能发送大于2GB的数据组)。我已经对代码进行了所有适当的更改,因此它不会发送这个/这些组,但现在我正在尝试构建测试用例。我已经构建了一个测试,它创建了不到10亿行,这些行占用了超过2GB的空间。在通过网络发送这些行之前,程序会正确地过滤掉它们。我遇到的问题是我需要创建一个单独的行来保存一个包含单个字符串的列或列的集合,在该行内,保存字符串,其中该行的大小大于2GB。但是当字符串开始占用接近2GB时,malloc返回NULL。我做了一些研究,发现可能是我没有足够的连续内存,所以我开始添加更多带有较

c# - 运行需要 "Security Message"的命令行 (cmd)

我要运行命令行pnputil在C#程序中。该程序需要安装USB驱动程序。我知道如何在C#程序中运行cmd,但我有一个不同的问题:我要安装的驱动没有windows权限。如果我通过“设备管理器->更新驱动程序”安装驱动程序并选择驱动程序路径,我会从Windows收到“安全消息”“Windows无法验证此驱动程序软件的发布者”并让我选择是否安装驱动程序(当然,如果我选择安装-安装成功)。如果我从cmdpnputil-a运行命令我也收到此消息,我可以安装驱动程序。但是当我尝试通过C#程序运行命令时-程序运行但未安装驱动程序(我也没有收到此消息)。我的C#代码:System.Diagnostic

windows - Windows 内核中的 free/malloc 函数

我在哪里可以找到内核中的free和malloc函数?我确实包含了stdlib.h,但是free和malloc函数不在stdlib.h中。我在哪里可以找到这些功能?谢谢! 最佳答案 看看ExAllocatePoolWithTag.在OSR有一些讨论,如果您正在进行Windows内核编程,这是一个很好的资源。安装WindowsDriverKit/DDK用于本地主机上的所有开发文件和文档。 关于windows-Windows内核中的free/malloc函数,我们在StackOverflow上