`

Make error process_begin: CreateProcess(***) failed.

    博客分类:
  • BAT
阅读更多
这两天编写从windows CMD调用Make编译的bat脚本。结果运行时总是报错:
process_begin: CreateProcess(bla,bla,bla.....) failed.
make (e=234): More data is available.
...

但是直接运行Make是不会有这个错误。

网上查找很久都没有找到解决方案。
最后一行一行注释别的脚本,终于找到问题所在了。

原来Windows CMD中set的变量空间是有限的(网上有说是11K)。也就是bat脚本中不能有太多的太长变量。否则可能会运行失败。
如:
set path=%path%;%path%
echo 1111====================================%path%
pause
set path=%path%;%path%
echo 2222====================================%path%
pause
set path=%path%;%path%
echo 3333====================================%path%
pause
set path=%path%;%path%
echo 4444====================================%path%
pause
set path=%path%;%path%
echo 5555====================================%path%
pause
set path=%path%;%path%
echo 6666====================================%path%
pause
set path=%path%;%path%
echo 7777====================================%path%
pause
set path=%path%;%path%
echo 8888====================================%path%
pause
set path=%path%;%path%
echo 9999====================================%path%
pause
pause

运行后打出第5个bat就退出了。

所以bat命令不能定义太多变量和内容
或者在一些变量用完后可以把其设为空
set var=

分享到:
评论

相关推荐

    Qt编译过程出现错误process_begin: CreateProcess(NULL, rm -f debug/moc_predefs.h, …) failed的解决办法

    最近运行QtWindows版本,发现无法...process_begin: CreateProcess(NULL, rm -f debug/moc_predefs.h, ...) failed. make (e=2): 系统找不到指定的文件。 Makefile.Debug:174: recipe for target 'compiler_moc_hea

    qt编译规则

    ### Qt编译规则及相关知识点详解 #### 一、Qt简介及版本信息 Qt是一种全面的跨平台C++应用程序框架,广泛应用于开发桌面、移动设备以及嵌入式系统的应用。本篇文档主要关注的是Qt 4.8.4版本,这是在Qt 3.x系列之后...

    CreateProcess

    在Windows操作系统中,`CreateProcess`是一个非常重要的API函数,用于创建新的进程和其初始主线程。这个函数是系统级接口,由Microsoft提供,广泛应用于各种应用程序开发,尤其是在使用C++编程时。本文将深入探讨`...

    终结者2.2msb_Bby44.com.rar )

    【标题】"终结者2.2msb_Bby44.com.rar" 提示我们这是一个关于“终结者”软件的更新版本,版本号为2.2,可能是某个特定的开发项目或者安全工具。...".rar"表明这是一个RAR格式的压缩文件,通常用于存储和分发多个文件。...

    Proteus仿真ARM7实验手册2

    Proteus仿真ARM7实验手册2...

    Moc.zip_moc_moc4455_喷管 JAVA

    标题"Moc.zip_moc_moc4455_喷管 JAVA"所指的是一份包含JAVA源代码的压缩包,用于实现对超音速流在喷管中的二维分析。"MOC"通常代表"Method of Characteristics",这是一种解决偏微分方程,特别是流体力学中的超音速...

    Android jni ndk 工程

    Android studio 编译第一个NDK程序的详细教程的代码,附上Android studio编写第一个NDK工程的过程详解文章的链接https://blog.csdn.net/weixin_37639900/article/details/89680670

    windows下eclipse跑junit报错:CreateProcess error=206

    windows下eclipse跑junit报错:CreateProcess error=206后面跟着乱码。 把这个jar替换掉就好了,放在:eclipse/plugins/下面。 参考:https://bugs.eclipse.org/bugs/show_bug.cgi?id=327193

    解决createprocess error code 740

    标题 "解决createprocess error code 740" 指的是在尝试运行一个应用程序时遇到的一个特定错误,其中 `CreateProcess` 是 Windows API 中用于创建新进程的函数。错误代码 740 表示 "请求的操作需要提升的权限",意味...

    计算机专业《操作系统》实验指导书

    - **进程创建:** 介绍使用`CreateProcess()`函数创建进程的过程,包括各个参数的意义和使用方法。 - **特殊创建标志:** 如`CREATE_SUSPENDED`标志可以让进程创建后立即暂停,以便后续操作。 **实验参考资料:**...

    dll_charu.rar_CreateProcess_createprocess dll_creatprocess的dll

    《DLL注入:深入理解CreateProcess与DLL的动态加载》 在Windows操作系统中,程序的执行并不总是静态的。有时候,我们需要在程序运行时动态地加载和执行其他代码,这就是DLL(Dynamic Link Library)注入的基本思想...

    CrateProcess 函数解析

    - **`CREATE_DEFAULT_ERROR_MODE`**:不继承父进程的错误模式。 - **`CREATE_SEPARATE_WOW_VDM`**:在 Windows 2000 上运行 16 位 Windows 应用程序时使用,创建一个独立的 DOS 虚拟机 (VDM)。 - **`CREATE_...

    API_HOOK_CreateProcess进程监视:知道你运行了哪些程序.zip

    在这个特定的案例中,"API_HOOK_CreateProcess进程监视"指的是利用API钩子来监控系统的CreateProcess函数。CreateProcess是Windows操作系统中的一个关键API,它负责创建新的进程和执行新的可执行文件。 当我们谈论...

    android protocol buffers demo

    2. **.proto文件**:这是ProtoBuf的核心,它定义了消息类型和字段,类似于XML Schema或Java类。例如: ```protobuf syntax = "proto3"; message Person { string name = 1; int32 id = 2; string email = 3; ...

    计算机操作系统.docx

    - **进程控制**:创建、撤销、阻塞、唤醒等操作,Windows有`System()`, `CreateProcess()`等函数,Linux使用`fork()`和`exec()`函数族。 10. **线程**: - **线程**:进程内的执行单元,可并发运行,Linux中使用`...

    多进程实现快速排序(北京大学操作系统课程实习)

    CreateProcess(NULL, cmdLine, NULL, NULL, FALSE, 0, NULL, NULL, &siStartInfo, &piProcInfo)) { printf("创建子进程失败。\n"); return 1; } // 等待子进程完成 WaitForSingleObject(piProcInfo.hProcess, ...

    labview_Windows-API.rar_API_API.LLB LABVIEW_LabVIEW API_api labv

    例如,`CreateProcess` API可以用于启动新的进程,`GetWindowText`可以获取窗口的标题,`SendMessage`则可以向其他应用程序发送消息。 LabVIEW中调用Windows API的一般步骤如下: 1. **引用API库**:首先,你需要...

    自动稳藏程序源代码

    - **系统API**:自动稳藏程序会利用系统API来实现其功能,例如使用`CreateProcess`启动自身,`SetPriorityClass`改变进程优先级以低调运行,`SetProcessPriorityBoost`防止被用户暂停等。 4. **文件隐藏**: - *...

    实时显示DOS程序执行的小软件含代码

    WM_CREATEPROCESS_ERROR : showmessage('创建进程错误!'); WM_READPIPE_ERROR : showmessage('读管道错误!'); WM_FINISHED_COMMAND : showmessage('命令执行完毕!'); end; inherited WndProc(Message); ...

Global site tag (gtag.js) - Google Analytics