Unity3D 一鍵設(shè)置文件夾右鍵菜單打開(kāi)Unity工程

本文,筆者整合一下網(wǎng)絡(luò)上的右鍵打開(kāi)unity工程的批處理腳本,將添加和刪除功能整合到一起方便使用,未添加則自動(dòng)添加,已添加如再次運(yùn)行則移除這個(gè)功能。

代碼:

@echo off
mode con cols=60 lines=5
::這里用來(lái)測(cè)試權(quán)限并要求提權(quán)
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
 if '%errorlevel%' NEQ '0' (
 goto UACPrompt
 ) else ( goto Admin )
 
:UACPrompt
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"
"%temp%\getadmin.vbs"
exit /B

:Admin
::請(qǐng)指定右鍵菜單名稱
set MENUNAME=Open with Unity
::請(qǐng)?jiān)谙旅嬖O(shè)置的unity 安裝路徑
set UNITYPATH=D:\Program Files\Unity3D2017.3.1f1\Editor\Unity.exe
REG QUERY "HKCR\Folder\shell\%MENUNAME%\command" 1>nul 2>nul
if %errorlevel%==0 ( 
goto :Del
) else ( 
goto :Add
)
:Add
:: 拼接開(kāi)啟工程的命令
set COMMAND=\"%UNITYPATH%\" -projectPath \"%%1\"
REG ADD "HKCR\Folder\shell\%MENUNAME%" /v "icon" /d "%UNITYPATH%" /f >nul
REG ADD "HKCR\Folder\shell\%MENUNAME%\command" /ve /d "%COMMAND%" /f >nul
if %errorlevel%==0 ( 
echo 添加成功~
) else ( 
echo 添加失敗
)
pause
exit

:Del
echo 確認(rèn)刪除輕敲任意鍵,如果退出請(qǐng)點(diǎn)右上角 【X】
pause>nul
REG DELETE "HKCR\Folder\shell\%MENUNAME%" /f >nul
if %errorlevel%==0 ( 
echo 刪除成功~
) else ( 
echo 刪除失敗~
)
pause
exit


Tips:
1 . 請(qǐng)務(wù)必設(shè)置好Unity的安裝路徑;
2 .如果沒(méi)有管理員權(quán)限會(huì)自動(dòng)彈出UAC。
3 .奇數(shù)次運(yùn)行是添加功能,偶數(shù)次運(yùn)行是移除功能,也即是如果監(jiān)測(cè)到添加過(guò),就會(huì)執(zhí)行移除動(dòng)作哦,當(dāng)然,此時(shí)你是可以點(diǎn)右上角關(guān)閉的這個(gè)批處理的。

  1. 最近打開(kāi)Unity總是強(qiáng)制要求登錄賬號(hào),其實(shí)用命令行模式開(kāi)啟就能跳過(guò)啦,快拷貝去用吧!

測(cè)試:

演示了刪除和添加功能

如果有時(shí)間 想給這個(gè)右鍵菜單加入二級(jí)菜單,畢竟一臺(tái)電腦上安裝了的Unity版本賊多,已經(jīng)成文,歡迎圍觀。

擴(kuò)展閱讀:

更新說(shuō)明:

  • 將拼接指令更新為下面這一句 - 2019年9月16日

更新前:

:: 拼接開(kāi)啟工程的命令
set COMMAND=%UNITYPATH% -projectPath %%1%% 

更新后:

:: 拼接開(kāi)啟工程的命令
set COMMAND=\"%UNITYPATH%\" -projectPath \"%%1\"
  1. 解決了工程路徑不能中不能存在空格的問(wèn)題
  2. 解決了對(duì)文件夾右鍵開(kāi)啟工程如果工程所在文件夾名稱中有空格獲取的路徑為短路徑的問(wèn)題。
  3. 短路徑在Unity 中不支持會(huì)導(dǎo)致vs工程加載異常,出現(xiàn)引用取不到的現(xiàn)象。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容