2012-01-24 29 views
11

Tôi đang làm việc trên một dự án mà chúng tôi sẽ gọi là Vùng chứa. Vùng chứa có một loạt tài nguyên EmbeddedResources. Các tệp gốc cho các EmbeddedResources này là một dự án khác mà chúng ta sẽ gọi là FileProject.Làm cách nào để có toàn bộ thư mục là tài nguyên được nhúng trong dự án Visual Studio?

FileProject là một dự án hiện đang được một nhóm các nhà phát triển khác nhau và luôn thay đổi, vì vậy tôi có các tệp EmbeddedResource được liên kết - để bất cứ khi nào dự án ban đầu thay đổi và tôi xây dựng lại dự án của mình chọn các thay đổi.

Thiết lập này bắt bất cứ khi nào tệp thay đổi, nhưng nó không bắt bất cứ khi nào tệp mới được thêm vào hoặc bị xóa khỏi dự án. Có cách nào để làm cho EmbeddedResources ra khỏi một cấu trúc thư mục toàn bộ trong Visual Studio để bắt loại bỏ và bổ sung tập tin?

+0

Các bạn có đang sử dụng SVN bên trong VS không? ví dụ. http://ankhsvn.open.collab.net/ Có vẻ như đây sẽ là một khởi đầu tuyệt vời cho nhiều kỹ sư làm việc trên một dự án được chia sẻ. –

+0

Tôi có thể đã hiểu sai câu hỏi. –

+0

Số lượng lớn tài nguyên nhúng là một thay thế thực sự kém cho tệp setup.exe. Bạn đã bao giờ chạy VMMap của SysInternals trong quá trình của bạn chưa? Tệp .zip sẽ là một cách tiếp cận đơn giản để giải quyết vấn đề cụ thể này. –

Trả lời

17

Chỉnh sửa hồ sơ dự án cho container trong một trình soạn thảo văn bản và tìm ra <EmbeddedResource> yếu tố liên kết đến các tập tin trong FileProject:

<EmbeddedResource Include="..\FileProject\Copy.bmp"> 
    <Link>Copy.bmp</Link> 
</EmbeddedResource> 
<EmbeddedResource Include="..\FileProject\Paste.bmp"> 
    <Link>Paste.bmp</Link> 
</EmbeddedResource> 

Xóa tất cả các yếu tố này và thay thế bằng một đơn <EmbeddedResource> phần tử có ký tự đại diện phù hợp:

<EmbeddedResource Include="..\FileProject\*.bmp" /> 

Bây giờ nếu bạn thêm Cut.bmp vào FileProject, nó cũng sẽ hiển thị trong Container.

+1

Cách tiếp cận này hoạt động mặc dù các tệp mới được thêm vào sẽ hiển thị trong tệp .csproj với Nội dung hành động xây dựng nhưng chúng cũng hoạt động như EmbeddedResource trong thực tế. –

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