Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
魔术师Dix
Unity 通用库:紫苑
提交
a4dc1496
Unity 通用库:紫苑
项目概览
魔术师Dix
/
Unity 通用库:紫苑
通知
3
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
Unity 通用库:紫苑
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
a4dc1496
编写于
3月 06, 2024
作者:
魔术师Dix
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
【Utils】增加编辑器下运行Bat文件的方法;
上级
2fb240d6
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
37 addition
and
0 deletion
+37
-0
Assets/Aster/EditorUtils/EditorUtils.cs
Assets/Aster/EditorUtils/EditorUtils.cs
+37
-0
未找到文件。
Assets/Aster/EditorUtils/EditorUtils.cs
浏览文件 @
a4dc1496
...
...
@@ -8,6 +8,7 @@
*/
using
System.Collections.Generic
;
using
System.Diagnostics
;
using
System.IO
;
#if UNITY_EDITOR
using
UnityEditor
;
...
...
@@ -754,6 +755,42 @@ namespace Aster.AsterBinary
o
.
CopyTo
(
dir
,
fileName
);
}
public
static
void
RunBat
(
string
filePath
,
bool
showWindow
=
false
)
{
if
(!
File
.
Exists
(
filePath
))
{
Logger
.
LogError
(
$"目标路径不存在:
{
filePath
}
"
);
return
;
}
ProcessStartInfo
startInfo
=
new
ProcessStartInfo
();
startInfo
.
FileName
=
filePath
;
// .bat文件的完整路径
startInfo
.
Arguments
=
""
;
// 如果.bat文件需要参数,可以在这里添加
startInfo
.
UseShellExecute
=
false
;
// 必须为false以便能够重定向I/O流
startInfo
.
CreateNoWindow
=
!
showWindow
;
// 是否显示命令提示符窗口(可选)
// 如果希望看到.bat文件的输出
startInfo
.
RedirectStandardOutput
=
true
;
startInfo
.
RedirectStandardError
=
true
;
startInfo
.
StandardOutputEncoding
=
System
.
Text
.
Encoding
.
UTF8
;
startInfo
.
StandardErrorEncoding
=
System
.
Text
.
Encoding
.
UTF8
;
startInfo
.
WindowStyle
=
ProcessWindowStyle
.
Normal
;
// 或Hidden来隐藏窗口
using
(
Process
process
=
new
Process
())
{
process
.
StartInfo
=
startInfo
;
process
.
OutputDataReceived
+=
(
sender
,
args
)
=>
Logger
.
Log
(
args
.
Data
);
process
.
ErrorDataReceived
+=
(
sender
,
args
)
=>
Logger
.
LogError
(
args
.
Data
);
process
.
Start
();
process
.
BeginOutputReadLine
();
process
.
BeginErrorReadLine
();
// 如果需要等待.bat文件执行完成再继续
process
.
WaitForExit
();
}
}
#
endregion
}
}
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录