@echo off
if [%1] == [] exit
adb kill-server
tasklist /FI "IMAGENAME eq DuOS.exe" 2>NUL | find /I /N "DuOS.exe"
if NOT "%ERRORLEVEL%"=="0" (start "" %4 timeout 25)
(adb -e install %1)>%3
(findstr /c:"Success" %3)>%2
SET /p myvar=<%2
echo myvar= %myvar%
if "%myvar%"=="" set s=0
if NOT "%myvar%"=="" set s=1
echo %s%
我从C ++文件获取Arguments,而我的批处理文件是Executing它打开命令Prompt and Doing The Work,但我需要隐藏命令提示符,它应该不可见.......
答案 0 :(得分:0)
您始终可以创建.vbs脚本来运行批处理文件。 vbs脚本只需要一行代码。打开文本编辑器并键入以下内容:
CreateObject("Wscript.Shell").Run """" & WScript.Arguments(0) & """", 0, False
将其另存为invisible.vbs,然后使用以下命令行条目调用它:
wscript.exe "C:\Wherever\invisible.vbs" "C:\Some Other Place\MyBatchFile.bat"
(您将使用C ++的语法来运行该命令)
来源:https://superuser.com/questions/62525/run-a-completly-hidden-batch-file
修改强> 该链接还解释了如果需要传入参数
,如何执行此操作答案 1 :(得分:0)
BOOL result = CreateProcess(NULL,
cmd,
NULL,
NULL,
FALSE,
CREATE_NO_WINDOW,
NULL,
NULL,
&startupInfo,
&processInformation);
cmd是批处理文件的NAme,命令需要发送批处理文件, startupInfo使其为零 processInformation使其为零
PROCESS_INFORMATION processInformation = {0};
STARTUPINFO startupInfo = {0};