Tò mò nếu có ai biết cách khắc phục sự cố này; Tôi có một tệp .cpp cụ thể, vì một lý do nào đó, bất cứ khi nào tôi sửa đổi nó (thậm chí chỉ thêm một ký tự trắng) và xây dựng dự án, hãy biên dịch lại một loạt các tệp .cpp không liên quan khác (10-20 trong số đó).Thay đổi tệp .cpp gây Visual Studio 2012 để biên dịch lại các tệp không liên quan
Tệp đó không phải là # include'd trong bất kỳ tệp nào khác (tôi không bao giờ #include .cpp tệp trực tiếp, chỉ .h) và không có phụ thuộc nào khác mà tôi có thể nghĩ đến - dường như với tôi như Visual Studio hiểu lầm cây phụ thuộc, hoặc có một số trạng thái nội bộ bị hỏng liên quan đến quá trình xây dựng của nó. Tôi đã thử xóa .sdf, .suo, ipch /, .user, và thư mục tập tin đối tượng, nhưng vấn đề xuất hiện trở lại sau một thời gian ngắn.
Sửa đổi bất kỳ tệp .cpp nào khác chỉ làm biên dịch lại tệp đó, như mong đợi.
Tôi biết một chút về MSBuild nhưng không thấy bất kỳ điều gì rõ ràng không rõ ràng trong tệp .vxproj - tệp .cpp được đề cập chỉ xuất hiện một lần trong nhóm mục ClCompile và tiêu đề của nó chỉ xuất hiện một lần trong nhóm ClInclude.
Nếu điều này đổ chuông bất kỳ, hoặc nếu có ai có lời khuyên về cách tôi có thể đi về theo dõi này xuống và xử lý sự cố nó, nó sẽ được đánh giá rất nhiều!
UPDATE:
Tôi chạy msbuild /verbosity:Detailed
nhưng tiếc là lời giải thích của mình cho lý do tại sao các tập tin không liên quan đang nhận được biên soạn là cũng giống như đục:
Using "CL" task from assembly "Microsoft.Build.CppTasks.Common.v110, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a".
Task "CL"
Read Tracking Logs:
Debug\cl.read.1.tlog
Output details (109 of them) were not logged for performance reasons.
{UnrelatedFile1.cpp} will be compiled as {PROBLEM_FILE.CPP} was modified at 4/30/2013 3:28:02 PM.
{UnrelatedFile2.cpp} will be compiled as {PROBLEM_FILE.CPP} was modified at 4/30/2013 3:28:02 PM.
(etc...)
Nếu điều này làm cho tinh thần để bất cứ ai cho tôi biết - có thể dường như không tìm thấy nhiều thông tin về các hoạt động bên trong của tác vụ CL hoặc lý do tại sao nó sẽ nhìn thấy một sự phụ thuộc giữa các tệp CPP không liên quan này.
cập nhật câu trả lời của tôi cho chỉnh sửa của bạn, hy vọng nó sẽ giúp! – paulm
Cảm ơn - chưa có cơ hội thử nó, kinda đã từ bỏ nó vào một ngày khác - nhưng sẽ sớm bị đâm vào nó. Đừng nghĩ rằng đó là một chuỗi tiêu đề - tôi đã tìm kiếm mọi tệp trong giải pháp (thậm chí là nhị phân) cho tên tệp vi phạm, không có tham chiếu nào mà tôi chưa biết. – QuadrupleA
Cũng có thể là một vấn đề tiêu đề biên dịch sẵn, tùy thuộc vào những gì được bao gồm ở đâu. – paulm