2012-08-16 19 views
8

lỗi MSB4018: Tác vụ "VCMessage" không thành công bất ngờ. System.FormatException: Chỉ số (không dựa trên) phải lớn hơn hoặc bằng 0 và nhỏ hơn kích thước của danh sách đối số. tại System.Text.StringBuilder.AppendFormat (nhà cung cấp IFormatProvider, định dạng String, Object [] args) tại System.String.Format (nhà cung cấp IFormatProvider, định dạng String, Object [] args) tại Microsoft.Build.Shared.ResourceUtilities. FormatString (String unformatted, Object [] args) tại Microsoft.Build.Utilities.TaskLoggingHelper.FormatString (String chưa định dạng, Object [] args) tại Microsoft.Build.Utilities.TaskLoggingHelper.FormatResourceString (String resourceName, Object [] args) tại Microsoft.Build.Utilities.TaskLoggingHelper.LogWarningWithCodeFromResources (Chuỗi messageResourceName, Object [] messageArgs) tại Microsoft.Build.CPPTasks.VCMessage.Execute() tại Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost .Ex ecute() tại Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask (nhiệm vụ ITaskExecutionHostExExutHost, TaskLoggingContextLoggingContext, TaskHost taskHost, ItemBucket bucket, TaskExecutionMode howToExecuteTask, Boolean & taskResult) C: \ Program Files (x86) \ MSBuild \ Microsoft.Cpp \ v4 .0 \ Microsoft.CppBuild.targets 990 6 vtk_minimalLàm thế nào để sửa lỗi MSB4018 trong Visual Studio 2010?

+0

chính xác bạn đang biên soạn cái gì? Và điều đó chỉ xảy ra sau khi bạn thêm/chỉnh sửa một cái gì đó? – TheGeekZn

+0

mã C++. thực sự tôi đã cài đặt studio trực quan. sau đó xây dựng thư viện vtk trên đó. bây giờ tôi đang cố gắng thử nghiệm nó với một mã ví dụ tôi tìm thấy trên internet. nó không hoạt động. trước đó, tôi đã cố gắng xử lý LNK2019, LNK1120. Tôi nghĩ có vấn đề với mối liên kết. – TahaYusuf

+0

Bạn có thể đang thử quá nhiều cùng một lúc. Mã đó có thể cũ hoặc sai. Của nó lên đến người đã viết nó để giúp/cập nhật. – TheGeekZn

Trả lời

12

Tôi cũng gặp vấn đề tương tự. Tôi đã có một dự án Visual Studio 2005 C++ cũ, mà tôi mở cửa trở lại với Visual Studio 2010 C++. Đối với tôi, đề xuất đầu tiên được đề xuất tại Microsoft Connect đã hoạt động:

Sự cố bắt nguồn từ $ (TargetDir) bất ngờ được tìm thấy trong trang thuộc tính trong Link-> OutputFile. Trong quá trình xây dựng, chúng tôi đã cố gắng mở rộng OutputFile thành một fullpath nhưng chỉ có một giá trị rỗng. Do đó, nó dẫn đến ngoại lệ vượt quá giới hạn của chỉ mục.

Có khả năng chúng tôi sẽ không thể sửa những lỗi này trước khi phát hành VS2010. Cách giải quyết là sửa OutputPath hoặc kế thừa từ cha mẹ.

Nhấp chuột phải vào dự án và chuyển đến Thuộc tính> Trình liên kết> Chung. Sau đó, đặt "Tệp xuất" thành "< Thừa kế từ giá trị mặc định của phụ huynh hoặc dự án >"

Hy vọng bạn cũng có thể sửa nó cho bạn.

+1

Tuyệt vời, tôi đã thay đổi đường dẫn tệp đầu ra và thay đổi nó theo cách của nó, và nó bắt đầu làm việc cho tất cả các giải pháp. –

0

Tôi không thể tìm ra điều gì sai. Điều duy nhất khắc phục lỗi này đối với tôi là xóa cấu hình và tạo một cấu hình mới. Vì vậy, trong Trình quản lý cấu hình, tôi đã xóa một đối tượng không được tạo và tôi đã tạo lại từ một trình tương tự.

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