C 獲取外部exe程式的返回值

2021-06-07 12:42:00 字數 926 閱讀 4511

在自己的c++控制台程式裡呼叫外部的7za.exe命令列工具,需要得到7za的返回值,以確定解壓縮是否成功。

7-zip 返回以下退出**:

**        含義 

0                 沒有錯誤 

1                 警告(非嚴重錯誤)。比如乙個或多個檔案被其他程式鎖定,它們將不會被壓縮。 

2                 嚴重錯誤。

7                 命令列錯誤。

8                 操作所需要的記憶體不足。

255         使用者中止了處理過程。

要執行的命令列例如: d:\7za.exe a d:\nv1.zip d:\test\*.*

測試**如下:

#include "stdafx.h"

#include #include using namespace std;

int _tmain(int argc, _tchar* argv)

waitforsingleobject(pi.hprocess, infinite);

unsigned long result;

getexitcodeprocess(pi.hprocess, &result);

cout << "exit code : " << result << endl;

getchar();

return 0;

}

執行結果:

scanning

updating archive d:\nv1.zip

compressing abc.txt

compressing add.jnt

everything is ok

exit code : 0

C 呼叫外部exe, 並傳參獲取返回值

c 呼叫使用createprocess函式呼叫外部exe傳參並獲取其執行結果。msdn官方位址介紹 bool createprocess lpcwstr pszimagename,an exe file.lpcwstr pszcmdline,parameter for your exe file.l...

C 獲取IPCONFIG 返回值

在我們獲取本機區域網ip以及其他相關資訊時,直接呼叫系統ipconfig,也是一種很有效的方法。以下是我用c 實現的 讀取ipconfig的返回值的 獲取ipconfig返回值 返回 ipconfig輸出 public static string getipconfigreturns return ...

獲取應用程式返回值

static int main string args 當然,我們也可以在其他方法中終止應用程式,返回某個特定值。static void test 最後,寫乙個 那時候 常見的 整合方案 就是用批處理檔案將多個命令列程式串聯起來 test.bat echo off dotnet test.exe i...