2017-12-08 5 views
0

Windows 응용 프로그램의 경우 .exe 파일이있는 기본 폴더가 있습니다. 우리가이 폴더에 어떤 파일을 넣으면, 경로없이 파일 이름을 지정하는 것만으로 응용 프로그램에서 열 수 있습니다.UWP 응용 프로그램의 기본 폴더가 있습니까?

하지만 UWP의 경우에는 다릅니다. 응용 프로그램에 액세스 할 수있는 KnownFolders이 있습니다. 그리고 내 파일이있는 KnowFolder를 지정해야합니다.

하지만 파일을 특정 위치에두고 응용 프로그램에서 열거 나 폴더 유형이나 폴더 경로를 지정하지 않고 Windows 응용 프로그램의 기본 폴더를 사용하는 것과 같은 방식으로 파일을 열려고합니다.

가능합니까?

+0

정말 어떤 문제를 해결하려고합니까? 데스크톱 응용 프로그램의 경우 다른 응용 프로그램 유형만큼 상대 경로를 사용하는 것은 잘못되었습니다. 당신은 인상을 받고있는 것처럼 보입니다. 이것은 "기본 폴더"*가 프로세스를 만드는 데 사용 된 실행 가능 이미지 였기 때문입니다. 그렇지 않다. 당신은 * "현재 작업 디렉토리"*로 알려져 있습니다. 응용 프로그램 바로 가기를 만들 때 어떤 위치를 가리 키도록 설정하거나 런타임에 변경하도록 설정할 수 있습니다. – IInspectable

+0

@IInspectable, 응용 프로그램 설정을 변경 (테스트 용)하는 xml 파일을 넣고 경로 또는 다른 폴더 정보없이 읽을 필요가 있습니다. – Alexan

+0

"경로가없는"부분에 왜 집착합니까? 정규화 된 경로를 구성하는 것에 대해 열심히 무엇입니까? 실행 가능한 상대 경로가 필요하다면,'ms-appx : //'프로토콜을 사용하십시오. – IInspectable

답변

1

보안상의 이유로 설치된 폴더는 읽기 전용이므로 "경로없이 파일 이름 지정"은 UWP 기술에서 불가능합니다.

시나리오의 권장 폴더는 LocalFolder입니다. 설정에 권장되는 저장 장소는 공식 문서 (Store and retrieve app data)를 참조하십시오. 로컬 폴더는 복잡하지 않고 코드 줄만 입력하면됩니다.

Windows.Storage.ApplicationData.Current.LocalFolder 

일반 데이터의 기본 폴더로 처리 할 수 ​​있습니다.

+0

하지만 드라이브에있는 위치는 어디입니까? C : \ ProgramData? 또는 C : \ Users \ user_name \ AppData \ Local? – Alexan

+0

@Alexan 두 번째 경로입니다. 디버깅 할 때이 폴더를 출력하여 테스트 할 수 있습니다. localstate 폴더가 있습니다. –

관련 문제