传递命令行参数调用exe

vc 使用命令行调用C#程序:

 

VC端:

CString para;

int ret = g.RunExe(GFM->m_IniData.m_AppPath + _T(CHECK_AGENT_PASS),para);

  (FTPUPLOAD "ftp://vntracker.e-playnow.com"  "daze"  "jingwang@521"  "jwsm"  "D:/torrent/C# Java基本类型转   换.xls.zip")

 

int RunExe(CString exeFile, CString para)
{
 int ret;
 SHELLEXECUTEINFO ShExecInfo = {0};

 if(_taccess(exeFile,0) != 0)
  return -2 ;
 ShExecInfo.cbSize = sizeof(SHELLEXECUTEINFO);
 ShExecInfo.fMask = SEE_MASK_NOCLOSEPROCESS;
 ShExecInfo.hwnd = NULL;
 ShExecInfo.lpVerb = NULL;
 ShExecInfo.lpFile = exeFile.GetBuffer(0);  
 ShExecInfo.lpParameters = para.GetBuffer(0);
 ShExecInfo.lpDirectory = NULL;
 ShExecInfo.nShow = SW_HIDE;
 ShExecInfo.hInstApp = NULL; 
 ShellExecuteEx(&ShExecInfo);
 int k = WaitForSingleObject(ShExecInfo.hProcess,INFINITE);
 GetExitCodeProcess( ShExecInfo.hProcess,(LPDWORD)&ret);
 return ret ;
}

 

 

C#端:

static void Main(string[] args)
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            if (args.Length == 0)
                Application.Run(new Login());
            else
                Application.Run(new InvokeWebSvr(args));           
           
        }

 

 string[] args = null;

 public InvokeWebSvr(string[] args)
        {
            InitializeComponent();
            this.args = args;
        }

 

string cmdType = args[0];
            switch (cmdType)
            {

                 case xxx: ......

                         break;

            }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值