1

Microsoft 팀의 Visual Visual Studio 2017 Installer Projects 확장 프로그램을 사용하여 Visual Studio의 데스크톱 응용 프로그램 용 MSI 설치 관리자를 만듭니다. SetUp Project를 성공적으로 만들었고 SetUp 프로젝트의 File System Editor에 필요한 모든 속성을 설정했습니다 (단축키, 프로그램 파일 메뉴 등의 단축키). 설치 관리자는 대상 컴퓨터의 Public Documents 폴더에 XML 파일을 배포해야합니다. 질문 : 설치 프로그램이 앱을 설치할 사용자 컴퓨터의 공용 문서 폴더를 대상으로 지정하는 방법은 무엇입니까?공용 문서 폴더를 대상으로하는 Visual Studio 설치 프로젝트

배경 : :이 설치 관리자는 MS Office VSTO Add-In for WORD 용으로 제작되었으며 배포는 Windows Installer (ClickOnce가 아닌)를 통해 수행됩니다. 라이센스 관리 시스템에 따르면 XML 구성 파일은 추가 기능의 디렉터리가 아닌 추가 기능을로드하는 응용 프로그램의 디렉터리가 될 응용 프로그램 디렉터리에 배포해야합니다. 이 경우 XML 파일의 권장 위치는 Vista의 공용 문서 폴더와 같은 공용 폴더 또는 이후 버전의 Windows입니다.

답변

0

방금 ​​VS2017 설치 프로그램 프로젝트의 UI를 클릭했습니다. 공용 문서 폴더를 지정하는 방법이 표시되지 않습니다. 사용자 정의 폴더 ("파일 시스템"> 특수 폴더 추가> 사용자 정의 폴더를 마우스 오른쪽 단추로 클릭)를 추가 할 수 있지만 공개 문서 폴더가 포함되지 않은 predefined properties of Windows Installer으로 제한됩니다.

일반 폴더에만 설치하고 공용 문서 폴더가 아니더라도 CommonAppDataFolder을 사용할 수 있습니다. 사용자 정의 폴더의 DefaultLocation에 지정하십시오.

그렇지 않으면 SHGetKnownFolderPath(FOLDERID_PublicDocuments,...)을 호출하고 그 결과를 속성에 할당하는 사용자 지정 동작을 작성할 수 있습니다. 그런 다음 사용자 정의 폴더의 DefaultLocation에 대한 속성을 지정합니다. 설치 프로그램 프로젝트를위한 tutorial for writing a VB custom action입니다.

나는 설치 프로그램 프로젝트를 완전히 없애고 훨씬 더 많은 유연성을 제공하는 WiX toolset을 사용하는 것이 좋습니다. 그것은 멋진 비주얼 스튜디오 확장 기능도 함께 제공됩니다. WiX는 공개 문서 폴더의 경로로 초기화 된 WIX_DIR_COMMON_DOCUMENTS 속성을 이미 정의합니다. Example.

+0

답변을 읽은 후 [link] (https://manfredlange.blogspot.de/2013/05/wix-installing-files-to-public.html)를 읽은 다음 [this] (http : //stackoverflow.com/a/17410330/1232087) 및이 문제를 해결할 수있는 [this] (http://wixtoolset.org/documentation/manual/v3/howtos/files_and_registry/add_a_file.html)을 참조하십시오. VS2017 설치 관리자 프로젝트의 UI를 클릭하여 도울 수있는 방법을 조사해 주셔서 감사드립니다. 매우 감사. 나는 최신 버전의 WiX 3.11 RC를 사용했다. – nam