栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C++无黑框执行CMD 曲线救国

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C++无黑框执行CMD 曲线救国

最近需要在C++里调用一些外部的程序和cmd命令,但是始终没有找到适合的方法。用了WinExec等,但似乎对我的程序不太友好,要么闪退,要么执行不了…

但是,用WinExec却可以很好的执行Bat,并且使用Bat间接执行的程序也可以正常运行。

@echo off
set command=%1
%command:~1,-1%

%command:~1,-1% 是用来截取字符串的,将字符串首尾的字符截掉。所以,在C++中就可以这样:

WinExec("cmd.exe /c run.bat "命令"");

并且可以传递参数。
但是,用Bat一样会弹出黑框。这时候可以用Bat转Exe的软件,比如Bat to exe converter。转换前,可以在EXE-FORMAT菜单里选择位数和是否有DOS框。
把代码里的run.bat换成exe即可。效果是一样的。用G++加上 -mwindows 也不会弹出黑框。
虽然这个方法不是很完美,但在找到更合适的方法前也能凑合用吧。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/298409.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号