Unity与DosBat相关

这篇博客介绍了如何在Unity中调用系统进程来操作Excel文件进行打印,并展示了通过修改.bat文件首行来简化Unity启动批处理文件的过程。内容包括使用ProcessStartInfo设置Verb参数以执行不同的操作,如打印或打开文件,以及如何通过Application.OpenURL直接运行.bat文件。
摘要由CSDN通过智能技术生成

///

Unity 調用系統進程,可直接調用外部程序 Excel 進行打印操作

會直接在目標路徑下生成對應的 PDF 文件

另外 Verb 還有其他命令: new / edit / open / print / run / run as 分別執行不同操作

private void OnGUI() { if (!GUI.Button(new Rect((Screen.width - 200) / 2, (Screen.height - 200) / 2, 200, 200), "Print Excel")) return; #region 查看Verb //查看對應擴展名的程序,所支持的Verb字符串 命令 //ProcessStartInfo psi = new ProcessStartInfo(Application.dataPath + "/Chinar-TestPrintExcel.xlsx");//這裏傳一個帶擴展名文件的 文件路徑 //foreach (var s in psi.Verbs) //{ // print(s); //} #endregion System.Diagnostics.Process process = new System.Diagnostics.Process //系統進程 { //StartInfo的屬性成員FileName 表示需要啓動的進程,可以被設置成可執行文件,也可以被設置成其擴展名已經與系統上安裝的應用程序關聯的任何文件類型。本例中FileName 就被設置成pdf文件,這樣調用Start()方法啓動進程時,便會去啓動本機已經安裝的且與pdf文件相關聯的默認打開程序(本機爲Adobe Reader程序)。 // StartInfo = { FileName = Application.dataPath + "/Chinar-TestPrintExcel.xlsx", //要打印的文件路徑 CreateNoWindow = true, //不顯示調用程序窗口 WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden, //設置窗口狀態,最大、最小化 UseShellExecute = true, //使用設定命令執行 Verb = "print" //指定執行的動作,打印:print 打開:open ………… } }; process.Start(); //開始打印 }

Unity 調用外部程序打開.bat 文件流程比較繁瑣

這裏 Chinar 提供一個簡單的方式

用記事本打開你需要操作的 .bat 文件

在第一行加上: cd /D %~dp0
這裏寫圖片描述
然後在 Unity 中,我們通過函數 Application.OpenURL(文件路徑)直接打開 .bat 文件

private void OnGUI() { if (!GUI.Button(new Rect((Screen.width - 200) / 2, (Screen.height - 200) / 2, 200, 200), "Run Bat")) return; Application.OpenURL(Application.streamingAssetsPath.Replace("StreamingAssets", "ChinarDemo/StreamingAssets") + "/BatFile.bat");//傳入路徑即可 } 

///

///

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值