|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
[mw_shl_code=cpp,true]#include <stdio.h># l+ V6 i) j; r9 ]1 [& F
#include <stdlib.h>/ c4 |4 k5 r0 \4 N' w' \$ R C4 I
#include <string.h>
# e, q% G8 x! Z+ r w+ F: g
3 ~+ a& a6 x% n$ P% W* Y ( H3 P4 x& M$ g9 z2 B: ^
int _System(const char * cmd, char *pRetMsg, int msg_len)" A; n7 s( N/ r3 ~% s
{
& G% F' E9 `+ m q8 C; ]- ~5 S* D6 \ FILE * fp;
# I! n- O/ Y5 j& }* z char * p = NULL; F n+ Y. I) r/ B- @
int res = -1;* C* G x) s2 C* q- |
if (cmd == NULL || pRetMsg == NULL || msg_len < 0)1 `; y- O% s* y( n0 |
{
7 ?' t# D5 K/ s printf("Param Error!\n");& ^ a( V( W0 T" z! v
return -1;4 P9 W( ^( D0 S; v! X* |
}
8 D* D$ |0 F M/ h if ((fp = _popen(cmd, "r")) == NULL)# }( ^4 ]6 e5 t$ V5 |( ?
{
" z2 f4 ]0 y$ t) a- |# x& N+ _ printf("Popen Error!\n");
# l* V7 D! W6 D/ P# r. H7 ~2 s) v: w& _ return -2;
! K: @6 Q/ D$ u3 n0 z; u( m- d P }8 w4 B* g8 }$ Q! Z; U+ e
else' q3 E% \$ o4 B$ j) _5 p
{. m3 t, I( ^) B* f i; f& ~; C
memset(pRetMsg, 0, msg_len);
4 q9 U8 W+ P9 b2 W* T9 e //get lastest result
( Y7 w7 j( N, e# n4 q/ m while (fgets(pRetMsg, msg_len, fp) != NULL)
+ M/ W& t* x3 e& g9 O- l! `, I {
" r6 h+ ^9 `% Z0 I1 n) q' g printf("Msg:%s", pRetMsg); //print all info
* O, L. V7 Y( S4 [. x }0 ?7 x6 Q' v& [
3 i& B6 H/ [# }, s' M! a if ((res = _pclose(fp)) == -1)
1 }( d& S: F2 J; e {, y- r. @# o1 G+ _. Z
printf("close popenerror!\n");5 b5 @. z; g1 d, Y5 D
return -3;
; Z& n# `! g/ u }
9 o. d2 B; o0 W6 f: e0 |4 o3 a pRetMsg[strlen(pRetMsg) - 1] = '\0';
( v1 e. Y& Y8 b' v& x4 G return 0;
2 q$ y( v5 o' A k }/ h/ l2 Y& T F
}
# f# ?0 d5 K+ S ]9 l9 }4 e 4 B( W3 k6 \- A6 N) g
int main()
0 o7 l' v- _, G1 t. m{; V4 I! s2 B0 l* N
//test cmd # l! F" l7 K! d0 T$ n$ F) m& I
char *cmd = "python d:\\PythonProjects\\Demo1.py [1]"; p' J3 O7 l0 R$ U1 [0 H
char a8Result[128] = { 0 };
4 Q# ^ _" n, E# z+ G. C4 ` int ret = 0;
' |* S2 r2 Q* v0 p: l0 M, {) n# F ret = _System(cmd, a8Result, sizeof(a8Result));
* T0 Z6 @# F: ]5 l$ f6 q/ o printf("ret = %d \na8Result = %s\nlength = %d \n", ret, a8Result, strlen(a8Result));# I2 m. y1 Z9 M' T
geTChar();
\9 w* U( s8 i7 U' m return 0;
2 y' G# p2 ^$ G) k9 z! y}/ x* ~8 A7 Y/ g8 B; P" G
[/mw_shl_code]- O( W8 l* Y" Q# y
|
|