2017-04-07 3 views
1

관계없는 프로그램에서는 문자열을 레지스터에 쓰고 Unity에서 읽으려고합니다.레지스터에서 읽기 Unity 3d

RegistryKey saveServerURL = Registry.CurrentUser.CreateSubKey("Software\\zRirez\\RF"); 
    saveServerURL.SetValue("serverURL", serverURL); 
    saveServerURL.Close(); 

하지만이 매개 변수는 읽을 수 없습니다.

serverURL = PlayerPrefs.GetString("serverURL"); 

찾지 못했습니다. 테스트 한 결과 Unit 자체에서 매개 변수를 생성하고 저장 했으므로 모든 것이 작동합니다.

PlayerPrefs.SetString("serverURL_test", "something"); 
    serverURL2 = PlayerPrefs.GetString("serverURL_test"); 

유니티는 외부 응용 프로그램에서 내 첫 번째 줄과 같은 위치에 매개 변수를 저장하지만, parames의 이름으로, 그 "h1351336811" 같은 것을 추가했다. 레지스트리의 매개 변수 이름은 "serverURL_test_h1351336811"입니다.

"serverURL"대신 "serverURL"+ "h1351332311"(이와 같이)을 찾고 있기 때문에 다른 응용 프로그램의 첫 번째 매개 변수를 등록기에서 찾을 수 없다고 생각됩니다. .

어떻게이 문제를 해결할 수 있습니까?

답변

2

Unity의 값을 가져 오는 방법을 사용하려는 경우 Unity의 값 저장 방법을 사용하는 것이 좋습니다. PlayerPrefs

는 회사 및 제품 이름은 프로젝트 설정에서 설정 한 이름입니다 HKCU \ 소프트웨어 [회사 이름] [제품 이름] 키, 아래의 레지스트리에 저장됩니다.

이 값을 사용하고 싶지 않고 RegistryKey를 사용하여 값을 설정하려면 RegistryKey를 사용하여 값을 가져와야합니다. Unity의 PlayerPrefs와 .NET에서 사용자 지정 레지스트리 키를 함께 사용하지 마십시오.

시도 RegistryKey.GetValue.