python调用exe程序 传入参数_关于使用c#调用python脚本文件,脚本文件需要传递参数...
最近工作中需要干这个事,网上搜了搜资料,改了改,基本是这样
建立一个控制台应用程序:
比如 加入我在命令行直接调用python脚本,命令为
y安装python后,添加环境变量,path下面,加入路径。
feng.py是需要执行的python脚本,command是其命令,-f 是参数 xx.os是需要操作对应的文件
static void Main(string[] args)
{
string[] strArr;//参数列表,需要传递的参数,这里只需要传递command -f xx.os 注意路径的正确
string sArguments = @"feng.py";//这里是python的文件名字
RunPythonScript(sArguments, "-u", strArr);//运行脚本文件
}
public static void RunPythonScript(string sArgName, string args = "",params string[] teps)
{
Process p = new Process();
string path = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase + sArgName;// 获得python文件的绝对路径,如果是绝对路径,尽量保证 //同一级目录名称没有空格 比如 "C://xx//ni hao//; //这里的ni hao之间有空格,会引发错误,得不到相应结果。
string path = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase + sArgName;// 获得python文件的相对路径
string sArguments = path; if (tep.Length > 0)
{
foreach (string sigstr in teps)
{
sArguments += " " + sigstr;//传递参数
}
}
//下面为启动一个进程来执行脚本文件设置参数
p.StartInfo.FileName = @"python26.exe"; //注意路径,相对路径在Debug目录下,这里是安装python26.exe
p.StartInfo.Arguments = sArguments;//这样sArguments就变成了feng.py command -f xx.os
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.RedirectStandardInput = true;
p.StartInfo.RedirectStandardError = true;
p.StartInfo.CreateNoWindow = true;
p.Start();//启动进程
p.BeginOutputReadLine(); p.OutputDataReceived += new DataReceivedEventHandler(p_OutputDataReceived);
Console.ReadLine();
p.WaitForExit(); } //输出打印的信息
static void p_OutputDataReceived(object sender, DataReceivedEventArgs e)
{
if (!string.IsNullOrEmpty(e.Data))
{
AppendText(e.Data + Environment.NewLine);
}
}
public delegate void AppendTextCallback(string text);
public static void AppendText(string text)
{
Console.WriteLine(text);
}
}
python调用exe程序 传入参数_关于使用c#调用python脚本文件,脚本文件需要传递参数...相关推荐
- python调用exe程序 传入参数_python运行带参数传入的exe文件
#首先感谢风清扬博主(http://blog.sina.com.cn/s/blog_7fa9bb7d0102vi9a.html) 解决方案:使用bat文件与os.system()函数. 假设我们要运行 ...
- python 检测exe是否未响应_第002篇:Python的安装
Python的版本出了很多,大致可分为Python2和Python3,我们课程所涉及的内容仅针对Python3. 针对不同的操作系统,Python的安装也会略有不同. 一.Windows操作系统 如何 ...
- java 使用Process调用exe程序 及 Process.waitFor() 死锁问题了解和解决
前言 最近在开发android的同时也在开发java ,碰到了需要使用java 程序调用exe的需求,这里我使用的 process 来调用的.该篇文章 读完需要8+分钟,文章类型为 小白入门类型,此处 ...
- python 关闭exe程序进程
python 关闭exe程序进程 import os def kill_exe(exe_name):"""杀死exe进程:param exe_name:进程名字:retu ...
- .net 部署到服务端IIS,Process调用exe程序无法运行问题解决
场景: 开发某一功能将html内容转换为pdf,采用第三方插件wkhtmltopdf.exe进行转换.在本地调试正常运行,部署到服务端后文件没有正常生成. IIS中,Process打不开cmd程序,程 ...
- web调用服务器的exe文件,浏览器Web调用exe程序文件
浏览器Web调用exe程序文件 Dwtowen • 2020 年 10 月 13 日 Loading... # 浏览器Web调用exe程序文件 ## IE 浏览器 在IE中可以使用ActiveXObj ...
- python能做出exe程序么_教你用python做exe程序
pyinstaller是一个python扩展包,可以将python文件转换成exe文件,这样就可以实现在没有python的环境下运行想运行的程序啦! 也可以用python做一个windows桌面应用程 ...
- C#传递参数调用exe程序
今天公司让我把Winform程序里的一块单独成一个exe文件,从原程序中打开新的exe程序,这就涉及到参数的传递,故来记录下传递参数到exe程序的方式 第一种方式 首先在程序A中添加引用using S ...
- Python程序使用os.system()方法调用exe程序导致主程序进程无响应
现象:在python进程中使用os.system()调用外部的exe程序,导致主进程阻塞 解决方法: subprocess.Popen("***.exe") 使用subproces ...
最新文章
- C#封装类似任务管理器CPU使用记录图
- 作者:曾伟,电子科技大学副教授。
- 【编程题目】有 n 个长为 m+1 的字符串,如果某个字符串的最后 m 个字符与某个字符串的前 m 个字符匹配......
- 做游戏,学编程(C语言) 11 2048
- android之普通蓝牙通信
- openresty 前端开发序 1
- java求实数的整数部分和小数部分_输入一个浮点数,并输出该数的整数部分和小数部分...
- ubuntu linux 从入门到精通.pdf,UBUNTU LINUX从入门到精通(附DVD)
- js给图片打马赛克?
- 解密Zynga:专注 流水线 数据控
- python模拟点击下一页_Python使用selenium模拟点击,进入下一页(三)
- pmp知识点(9)-项目资源管理
- 光伏储能容量优化MATLAB论坛,微电网中电池储能的容量配置及优化
- WPS 合并一个工作簿中多个工作表
- Mac-修改MySQL密码
- ios 按钮下面加下划线_IOS UIlabel 、UIButton添加下划线
- 汇编总结(3)——程序设计初步
- Chrome 70 将继续在地址栏隐藏网址中的 WWW
- ERROR:C2678 二进制“<”: 没有找到接受“const _Ty”类型的左操作数的运算符(或没有可接受的转换)
- vue如何实现消息的无缝滚动
热门文章
- java.lang.StackTraceElement类
- SAP Credit Memo Debit Memo
- SAPMMC控制台服务消失的解决方法
- 数据人必须会的技能,用手机查看数据报告真香
- 酒店差异战打响,“设计标签”能实现突围吗?
- 计算机里的文件弄不到桌面怎么办,笔记本电脑桌面上的文件夹不见了怎么办
- adb 连接某个wifi_一加7 Pro全局强制开启90Hz刷新率的办法(附ADB文件下载)
- 俄罗斯计算机科学留学,中南大学计算机科学与技术、俄罗斯硕士留学有没有寒暑假班?...
- html页面懒加载灰度图片大小,小程序初级指南--图片及其优化
- java中集合的区别_Java中的集合与集合之间的区别