Krpano学习:C#操作命令提示符(cmd),在C#中生成全景

14 篇文章 7 订阅

要在C#中生成全景,即是用C#去操作cmd,我在Krpano学习:在命令提示符(cmd)中生成全景的最后写出了在cmd中生成全景的命令:krpanotools64.exe makepano .config配置文件 全景图片 其他参数设置

因此,只要在C#中调用cmd,并把这句命令传入进去就行。

C#提供了Process类用于对本地和远程进行的访问权限,它也能启动和停止本地系统进程。具体看MSDN对Process的介绍

具体实现为:

using System.Diagnostics;

private Process panoProcess = new Process();
//命令参数,参数用空格隔开,最好写完整路径:makepano .config配置文件 全景图片 其他参数设置(如此处设置全景类型为球形,视角为360)
string arguments = "makepano " + markidconfig + " " + picturepath + "-panotype=sphere -hfov=360";
panoProcess.StartInfo.FileName = krpanopath + "krpano/krpanotools64.exe";//执行程序
panoProcess.StartInfo.Arguments = arguments;//将参数传递进程序
panoProcess.Start();//启动程序

如果在全景生成后还希望执行其他过程,那么需要使用下面方法:

using System.Diagnostics;

private Process panoProcess = new Process();
string arguments = "makepano " + markidconfig + " " + picturepath + "-panotype=sphere -hfov=360";
panoProcess.StartInfo.FileName = krpanopath + "krpano/krpanotools64.exe";
panoProcess.StartInfo.Arguments = arguments;
panoProcess.EnableRaisingEvents = true;//为true时为进程终止时激发System.Diagnostics.Process.Exited事件
//进程退出时执行,此处即全景生成成功后执行
panoProcess.Exited += (object sender, EventArgs args) =>  //Lambda表达式
{
	……
};
panoProcess.Start();//启动程序
panoProcess.WaitForExit();//等待进程退出

 

 当然,如果是执行其他的cmd命令,则直接修改arguments的值(cmd中的执行参数)以及panoProcess.StartInfo.FileName的值(cmd中的执行程序)就行了。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值