2013-04-20 18 views
10

Tôi muốn sao chép tệp dưới một vị trí Doucments trong WiX. Nhưng nó đưa ra cảnh báo:Thành phần testcomp cài đặt vào hồ sơ người dùng. Nó phải sử dụng một khóa registry dưới HKCU như KeyPath của nó, không phải là một tệp

Thành phần testcomp cài đặt vào hồ sơ người dùng. Nó phải sử dụng một khóa registry dưới HKCU như KeyPath của nó, không phải là một tệp.

Mã của tôi:

<Directory Id='PersonalFolder' Name='MyDocuments'> 
    <Component Id='testcomp' Guid='08C288B6-D8E0-4036-9CEB-E5F616AC6B5C'> 
     <File Id='doc_code_file1' Name='doc_code_file1' DiskId='1' 
      Source='Personalfolder\Visual Studio 2012\Code Snippets\Visual C#\My Code Snippets\SimpleMvvm\mvvmcommand.snippet' KeyPath='yes'></File> 
    </Component> 
</Directory> 

Trả lời

18

Đó là chính xác. Trình cài đặt Windows muốn các khóa đăng ký là các đường dẫn chính cho Thành phần cho mỗi người dùng. Nó phải làm với cách hồ sơ làm việc với nội dung được quảng cáo trong triển khai doanh nghiệp. Việc sửa chữa là rất thẳng về phía trước:

<Directory Id='PersonalFolder' Name='MyDocuments'> 
    <Component Id='testcomp' Guid='08C288B6-D8E0-4036-9CEB-E5F616AC6B5C'> 

     <RegistryValue Root='HKCU' Key='Software\Manufacturer\Product' 
        Name='Something (I like to use InstallFolder)' 
        Value='Something (I like to use [INSTALLFOLDER]' 
        KeyPath='yes' /> 

     <File Id='doc_code_file1' Name='doc_code_file1' DiskId='1' 
      Source='Personalfolder\Visual Studio 2012\Code Snippets\Visual C#\My Code Snippets\SimpleMvvm\mvvmcommand.snippet' /> 
    </Component> 
</Directory> 

Lưu ý: thêm khóa registry cho mỗi người dùng và rằng nó được đánh dấu KeyPath='yes'. Sau này không cần thiết vì nó là tài nguyên đầu tiên trong Component sẽ được đánh dấu là đường dẫn khóa theo mặc định, nhưng rõ ràng với đường dẫn khóa đôi khi tốt hơn.

+0

Cảnh báo hiện tại đã biến mất. Nhưng nó đưa ra một cảnh báo mới "cảnh báo LGHT1076: ICE91: Tệp 'doc_code_file1' sẽ được cài đặt vào mỗi thư mục người dùng 'code_SimpleMvvm' không thay đổi dựa trên giá trị ALLUSERS. Tệp này sẽ không được sao chép vào hồ sơ của từng người dùng nếu một cài đặt cho mỗi máy là mong muốn ". Điều gì có thể là một vấn đề? – Smaug

Các vấn đề liên quan