设置项目文件 .uproject 的右键菜单栏选项


有阵子没玩ue4了,发现右键 .uproject 的菜单栏选项不见了,折腾了一下弄回来了

这里写图片描述


  1. 删除注册表

    1. ctrl+r 输入 regegit 调出注册表
    2. 删除 HKEY_CLASSES_ROOT 下的 .uproject
  2. 下载脚本 UnrealProjectMenuRegistration.cmd,脚本源码在下面

  3. 安装启动器 Launcher(具体下载地址忘了,Google一下就有了)

    • 这里写图片描述
    • 安装后的路径一般为: C:\Program Files (x86)\Epic Games
  4. 修改脚本

    • 注释掉

      FOR /F "tokens=2*" %%A IN ('reg query "HKLM\SOFTWARE\EpicGames\Unreal Engine" /v "INSTALLDIR"') DO (
          SET "UnrealEngineDir=%%B"
      )
    • 在注释的代码后加入一行,直接设置 启动器路径

      SET UnrealEngineDir=C:\Program Files (x86)\Epic Games\
  5. 右键管理员权限运行该脚本

  6. done,项目文件 .uproject 的右键菜单栏选项 回来了


  • 参考资料

  • 脚本源码

    :: UnrealProjectMenuRegistration.cmd
    ::
    :: This batch file will try to find where the Unreal Engine is installed, then update your registry
    :: to register the Unreal Project File type (and its right click menu for things such as generating
    :: Visual Studio project files, and launching)
    ::
    :: Run as an Administrator, as it's required for writing to HKLM.
    ::
    :: Author: David Moore <david@sadrobot.co.nz>
    
    @ECHO OFF
    
    echo.
    echo Locating where Unreal Engine is installed by checking the Windows registry...
    
    FOR /F "tokens=2*" %%A IN ('reg query "HKLM\SOFTWARE\EpicGames\Unreal Engine" /v "INSTALLDIR"') DO (
        SET "UnrealEngineDir=%%B"
    )
    IF "%UnrealEngineDir%"=="" GOTO CannotFindUnrealEngine
    
    echo.
    echo Using Unreal Engine directory: %UnrealEngineDir%
    
    set LauncherPath=%UnrealEngineDir%Launcher\Engine\Binaries\Win64\UnrealVersionSelector.exe
    
    echo.
    echo Adding registry keys for the Unreal Project right click menu...
    
    :: HKLM\SOFTWARE\Classes\.uproject
    reg ADD "HKLM\Software\Classes\.uproject" /ve /d Unreal.ProjectFile /f
    IF ERRORLEVEL 1 (
        echo Couldn't write to registry. Did you forget to run this batch file as an administrator?
        goto TheEnd
    )
    
    :: HKLM\SOFTWARE\Classes\Unreal.ProjectFile
    reg ADD "HKLM\Software\Classes\Unreal.ProjectFile" /ve /d "Unreal Engine Project File" /f
    
    :: HKLM\SOFTWARE\Classes\Unreal.ProjectFile\DefaultIcon
    reg ADD "HKLM\Software\Classes\Unreal.ProjectFile\DefaultIcon" /ve /d "\"%LauncherPath%\"" /f
    
    :: HKLM\SOFTWARE\Classes\Unreal.ProjectFile\shell\open
    reg ADD "HKLM\Software\Classes\Unreal.ProjectFile\shell\open" /ve /d "Open" /f
    reg ADD "HKLM\Software\Classes\Unreal.ProjectFile\shell\open\command" /ve /d "\"%LauncherPath%\" /editor \"%%1\"" /f
    
    :: HKLM\SOFTWARE\Classes\Unreal.ProjectFile\shell\run
    reg ADD "HKLM\Software\Classes\Unreal.ProjectFile\shell\run" /ve /d "Launch game" /f
    reg ADD "HKLM\Software\Classes\Unreal.ProjectFile\shell\run" /v Icon /t REG_SZ /d "\"%LauncherPath%\"" /f
    reg ADD "HKLM\Software\Classes\Unreal.ProjectFile\shell\run\command" /ve /d "\"%LauncherPath%\" /game \"%%1\"" /f
    
    :: HKLM\SOFTWARE\Classes\Unreal.ProjectFile\shell\rungenproj
    reg ADD "HKLM\Software\Classes\Unreal.ProjectFile\shell\rungenproj" /ve /d "Generate Visual Studio project files" /f
    reg ADD "HKLM\Software\Classes\Unreal.ProjectFile\shell\rungenproj" /v Icon /t REG_SZ /d "\"%LauncherPath%\"" /f
    reg ADD "HKLM\Software\Classes\Unreal.ProjectFile\shell\rungenproj\command" /ve /d "\"%LauncherPath%\" /projectfiles \"%%1\"" /f
    
    :: HKLM\SOFTWARE\Classes\Unreal.ProjectFile\shell\switchversion
    reg ADD "HKLM\Software\Classes\Unreal.ProjectFile\shell\switchversion" /ve /d "Switch Unreal Engine version..." /f
    reg ADD "HKLM\Software\Classes\Unreal.ProjectFile\shell\switchversion" /v Icon /t REG_SZ /d "\"%LauncherPath%\"" /f
    reg ADD "HKLM\Software\Classes\Unreal.ProjectFile\shell\switchversion\command" /ve /d "\"%LauncherPath%\" /switchversion \"%%1\"" /f
    
    :Done
    echo.
    echo Done.
    echo.
    goto TheEnd
    
    :CannotFindUnrealEngine
    echo.
    echo DOH! Can't find the Unreal Engine.
    echo.
    goto TheEnd
    
    :TheEnd
    pause
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐