C#开发一个可被带参数调用并返回数据的控制台应用程序
1 标准输出流控制台程序:
namespace ReturnConsoleWrite
{
class Program
{
static void Main(string[] args)
{
//程序功能:将所以应用程序输入参数连成一个字符串
string _output=null;
for (int i = 0; i < args.Length; i++)
{
_output += args[i];
}
Console.Write(_output);
}
}
}
2 打包成EXE,如下:
3 先在cmd窗口测试下看看:
(1)在文件所在目录输入: cmd 然后回车
(2)在cmd窗口输入exe的名称+参数(参数用空格隔开即可)
测试正常!
4 开发第三方调用程序示例:
(1)用C#再写一个Winform窗体程序来调用上面那个控制台程序试试。
Winform窗体程序
代码如下:
namespace Call
{
public partial class Form1 : Form
{
string _bathpath= System.IO.Directory.GetCurrentDirectory();
string _call_exe_path;
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
/////第一种:返回值类型的exe
//Process myProcess = new Process();
//string para = textBox1.Text;
//ProcessStartInfo myProcessStartInfo = new ProcessStartInfo(_call_exe_path, para);
//myProcess.StartInfo = myProcessStartInfo;
//myProcess.Start();
//while (!myProcess.HasExited)
//{
// myProcess.WaitForExit();
//}
//int returnValue = myProcess.ExitCode;
//textBox2.Text = returnValue.ToString();
///第二种:
Process p = new Process();
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.FileName = _call_exe_path;
p.StartInfo.CreateNoWindow = true;
p.StartInfo.Arguments = textBox1.Text;//参数以空格分隔,如果某个参数为空,可以传入””
p.Start();
p.WaitForExit();
string output = p.StandardOutput.ReadToEnd();
textBox2.Text = output;
}
private void Form1_Load(object sender, EventArgs e)
{
toolStripStatusLabel1.Text ="BathPath:"+ _bathpath;
//_call_exe_path = _bathpath + "\\ReturN.exe";
_call_exe_path = _bathpath + "\\ReturnConsoleWrite.exe";
}
}
}
(2)用LabVIEW来调用一下这个控制台程序:
效果OK!
声明:本文参考资料——https://developer.aliyun.com/article/614108
C#开发一个可被带参数调用并返回数据的控制台应用程序的更多相关文章
- c#ADO.NET 执行带参数及有返回数据
直接上代码,这个过程中有个数据SqlDataReader转为 DataTable的过程,当中为什么这样,是应为我直接绑定DataSource的时候没有数据,网人家说直接绑定但是没效果,我就转换了一下. ...
- Vue+elementUI 自定义动态数据菜单导航组件实现展开收缩+路由跳转router-view渲染数据 路由跳转到同一个页面带参数ID 自动刷新数据
准备:导入ElementUI 看官网教程 数据准备:JSON数据转换成树状 参考文章: JS实现 JSON扁平数据转换树状数据 后台我拿的数据是这样的格式: [ {id:1 , parentId: 0 ...
- Java后端发出post请求带参数并接收返回的json
核心代码: 参数格式: “key1=value1&key2=value2” /*** sendUrl (远程请求的URL)* param (远程请求参数)* JSONObject ...
- asp.net mvc 使用Ajax调用Action 返回数据【转】
使用asp.net mvc 调用Action方法很简单. 一.无参数方法. 1.首先,引入jquery-1.5.1.min.js 脚本,根据版本不同大家自行选择. <script src=& ...
- swing开发一个修改项目数据库连接参数配置文件
我们在开发web项目中,经常有properties配置文件配置数据库连接参数,每次修改的时候还要去找到配置文件,感觉有点麻烦,就用swing做了个小工具修改参数,运行界面如下: =========== ...
- 使用python开发一个能够计算带括号的复杂表达式的计算器(只支持加减乘除)
使用到了模块re,正则,字典等 # 实现简单的加减乘除括号等运算 # Calculator def calculator(expression): print(expression) import r ...
- laravel重定向到上一个页面怎么带参数返回 withsucess 成功提示信息
//控制器中 return back()->with('success','操作成功'); //with的参数1是一个session变量名,参数2为该session变量值,在视图直接这样获取 @ ...
- Applescript 带参数调用某个App的方法
do shell script "open '/Users/eran/Documents/Workground/DragonAdventure/FlashCode/tools/SWFInfo ...
- mvc 跳转到另一个页面 Controller带参数
跳转到链接 // Controller public ActionResult Detail(int MessageId) { BLL.ZQS ...
- vue_cli下开发一个简单的模块权限系统之展现数据
这个页面是用户列表:userList就是第二张截图中的data里面的userList vue中只要改变存放数据的载体就会实现页面改变,mounted的意思是页面加载时执行这里面的函数,我们需要在页面加 ...
随机推荐
- 密码学—Vigenere破解Python程序
文章目录 概要 预备知识点学习 整体流程 技术名词解释 技术细节 小结 代码 概要 破解Vigenere需要Kasiski测试法与重合指数法的理论基础 具体知识点细节看下面这两篇文章 预备知识点学习 ...
- MindSponge分子动力学模拟——自定义控制器(2024.05)
技术背景 分子动力学模拟中的控制器(Controller)可以被用于修改模拟过程中的原子坐标和原子速度等参量,从而达到控制系统特定参量的目的.例如控温器可以用于实现NVT系综,控压器可用于实现NPT系 ...
- pyinstaller 打包无窗口python http.server无法启动
最近在写一个简单的文件服务器用来访问静态文件,遇到在pyinstaller无窗口模式下无法启动的问题,记录一下解决方案. 原因:http.server需要将记录输出到窗口,而pyinstaller打包 ...
- 异构数据源同步之数据同步 → datax 再改造,开始触及源码
开心一刻 其实追女生,没那么复杂 只要你花心思,花时间,陪她聊天,带她吃好吃的,耍好玩的,买好看的 慢慢你就会发现什么叫做 打水漂 不说了,我要去陪她看电影了 前情回顾 异构数据源同步之数据同步 → ...
- 文件系统(五):exFAT 文件系统原理详解
前言 exFAT是微软2006年推出的一种文件系统,距今已快二十年,相比于FAT16和FAT32,exFAT还是算年轻.exFAT一直是微软的一个专用文件系统,直到2019年微软发布它的规范,目前微软 ...
- Java交换map的key和value值
在Java中,我们都知道直接交换Map的key和value是不被允许的,因为Map的接口设计是基于key-value对的,其中key是唯一的,并且是不可变的(在HashMap等常见的实现中,虽然key ...
- YUV图片旋转
1.从H264视频流中解析出来的图片格式是YUV YUV旋转可以选择手工旋转,也可以利用libYUV,libYUV开启NEON指令之后可以加快处理速度 在iOS系统上,利用Accelcerate库进行 ...
- 在mobaxten上使用scala报错
查看报错信息 [ERROR] Failed to construct terminal; falling back to unsupported java.io.IOException: Cannot ...
- vue绑定下拉框 vue修饰符
<select v-model="selected"> <option>请选择</option> <option>HTML</ ...
- Vulkan Support Check and Dynamic Loader C++ code sample
很多时候不想静态依赖VulkanSDK所提供的静态库,因为会遇到一些过早的电脑不支持vulkan, 那么就需要使用动态加载vulkan-1.dll(for Windows)或libMoltenVK.d ...