다음을 통해 공유


MicrosoftGame.config 현지화

이 항목에서는 적절한 지역화된 버전의 문자열이 셸에 표시되도록 패키지 게임의 표시 문자열을 현지화하는 방법을 설명합니다. 이 단계는 Microsoft Docs의 레거시 앱 또는 게임에서 Windows 10 리소스 관리 시스템 사용 문서와 관련 있습니다. 추가 세부 사항 또는 시나리오가 이 토픽에 나와 있지 않은 경우 이 문서를 참조할 수 있습니다.

참고 항목

문자열 자산이 이와 같은 매니페스트 파일 내에 참조되어 있는 앞서 언급한 문서에 1개 버그가 설명되어 있습니다.

    ms-resource:Resources/ApplicationDisplayName  

참고 항목

실제 참조는 이와 같이 작동합니다(Resources/ 생략).

    ms-resource:ApplicationDisplayName  

게임에 현지화된 셸 화면 포함

패키지를 시작할 때 다음과 같은 섹션이 포함된 MicrosoftGame.config 파일이 있습니다. 이 파일은 OverrideDisplayName="My Game's Display Name" 속성이 포함된 텍스트 콘텐츠의 표시 여부를 지정합니다.


  <ExecutableList>
    <Executable Name="MyGame.exe"
                OverrideDisplayName="My Game's Display Name"
                Id="Game"/>
  </ExecutableList>

  <ShellVisuals DefaultDisplayName="PackageName"
                PublisherDisplayName="Publisher Display name"
                StoreLogo="Storelogo.png"
                Square150x150Logo="Logo.png"
                Square44x44Logo="SmallLogo.png"
                Description="My App Description"
                BackgroundColor="#000040"
                SplashScreenImage="SplashScreen.png"/>  

이러한 문자열의 다른 현지화 버전을 허용하려면 지원하려는 언어와 관련된 애플리케이션의 개별 하위 폴더에 .resw 파일을 생성하여 수행할 수 있습니다.

  1. resources.resw라는 XML 파일을 만들고 프로젝트의 문자열 하위 폴더에 저장합니다. 이는 프로젝트의 언어 중립적 대체입니다.
  2. 언어별로 프로젝트에 대한 새 문자열 하위폴더를 만듭니다. 예를 들어 멕시코어로 구사된 경우 Strings\en-us(영어) 또는 Strings\es-mx(스페인어)가 있습니다. 언어별로 알맞은 BCP-47 코드를 사용해야 합니다.
  3. 각 XML 파일에 다음과 같은 내용을 추가합니다. 강조 표시된 텍스트는 적절한 언어의 앱에 적절한 텍스트로 교체됩니다. 다음 예시는 (English)(을)를 간단한 접미사로 사용하는 방법을 보여줍니다.
    <?xml version="1.0" encoding="utf-8"?>
    <root>
        <data name="ApplicationDescription">
            <value>Contoso Demo app with localized resources (English)</value>
        </data>
        <data name="ApplicationDisplayName">
            <value>Contoso Demo Sample (English)</value>
        </data>
    </root>

이후 OverrideDisplayNameDescription 속성에서 다음과 표시된 ms-resource:ResourceStringName 구문을 사용하여 이러한 리소스 문자열을 참조하도록 MicrosoftGame.config 파일을 업데이트해야 합니다.

<ExecutableList>
    <Executable Name="MyGame.exe"
              OverrideDisplayName="ms-resource:ApplicationDisplayName"
              Id="Game"/>
</ExecutableList>

<ShellVisuals DefaultDisplayName="PackageName"
              PublisherDisplayName="Publisher Display name"
              StoreLogo="Storelogo.png"
              Square150x150Logo="Logo.png"
              Square44x44Logo="SmallLogo.png"
              Description="ms-resource:ApplicationDescription"
              BackgroundColor="#000040"
              SplashScreenImage="SplashScreen.png"/>

다음으로 MicrosoftGame.config 파일에 애플리케이션에서 지원하는 현지화 대상 목록이 포함되어 있는지 확인합니다. 예를 들어 앱이 미국 영어와 멕시코 스페인어를 지원하는 경우 설정 파일의 Game 요소는 다음과 같습니다.

<Resources>
    <Resource Language="en-US" />
    <Resource Language="es-MX" />
</Resources>

그런 다음 makepkg localize 명령을 사용하여 이러한 지역화된 자산 문자열을 포함하는 Resource.pri 파일을 생성합니다. 결과 Resources.pri 파일을 게임의 루트 콘텐츠 디렉터리에 넣습니다.

  1. 게임의 루트 콘텐츠 디렉터리에서 Microsoft GDK(게임 개발 키트) 게임 명령 프롬프트를 엽니다.
  2. 다음을 실행합니다.
    makepkg localize /d . /resw Strings

디렉터리 구조가 이 예제와 일치하지 않거나 추가 확인이 필요한 경우에는 makepkg localize(을)를 추가 매개 변수로 실행할 수 있습니다.

  • /resw(을)를 사용하여 루트 상대 경로를 지정하고 .resw 파일을 찾습니다.
  • /pd 및 디렉터리를 사용하여 결과 Resources.pri 파일을 기본 루트 디렉터리가 아닌 위치에 저장합니다. 대상 디렉터리가 이미 존재해야 합니다.
  • /t 및 디렉터리 이름을 사용하여 리소스를 XML 파일로 내보낼 위치를 지정합니다. 그런 다음 해당 리소스가 포함되어 있는지 수동으로 확인할 수 있습니다.

예:

    makepkg localize /d . /resw Resources /pd ..\FinalLooseFolder /t ..\TempOutput

이제 게임의 루트 콘텐츠 디렉터리에 resources.pri 파일이 있으므로 정상적으로 패키지를 만들 수 있습니다.

마지막으로, 시스템을 영어 또는 멕시코 스페인어로 설정하여 설치하는 경우 현지화된 문자열이 시작 메뉴 및 앱의 문자열을 표시하는 다른 시스템 페이지에 표시되는지 확인합니다. Microsoft Store 앱의 아이콘은 앱 패키지의 정보가 아니라 파트너 센터에 업로드된 데이터를 기반으로 합니다.

참고 항목

MicrosoftGame.config
MicrosoftGame.config overview
MicrosoftGame.config 편집기
MicrosoftGame.config 참조(샘플 MicrosoftGame.config 및 스키마)
패키징 개요