2012-08-16 67 views
8

エラーMSB4018: "VCMessage"タスクが予期せず失敗しました。 System.FormatException:インデックス(0から始まる)は、0より大きく、引数リストのサイズより小さくする必要があります。at System.Text.StringBuilder.AppendFormat(IFormatProviderプロバイダー、String形式、Object [] args) 、System.String.Format(IFormatProviderプロバイダー、String形式、Object [] args) 、Microsoft.Build.Shared.ResourceUtilities Microsoft.Build.Utilities.TaskLoggingHelper.FormatString(String unformatted、Object [] args) Microsoft.Build.Utilities.TaskLoggingHelper.FormatResourceString(String resourceName、Object [] args)でFormatString(文字列の書式が設定されていない、Object [] args) Microsoft.Build.Utilities.TaskLoggingHelper.LogWarningWithCodeFromResourcesで (文字列messageResourceName、[] messageArgs物体)Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHostでMicrosoft.Build.CPPTasks.VCMessage.Executeで () を.Ex (Microsoft Corporation、その関連会社またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。 .0 \ Microsoft.CppBuild.targets 990 6 vtk_minimalVisual Studio 2010でエラーMSB4018を修正するにはどうすればよいですか?

+0

あなたは正確に何をコンパイルしていましたか?それは、あなたが何かを追加/編集した後にのみ起こったのですか? – TheGeekZn

+0

とC++コード。実際に私はVisual Studioをインストールしました。その上にvtkライブラリを構築します。今私はインターネットで見つけたサンプルコードでテストしようとしています。それは動作しません。これの前に、私はLNK2019、LNK1120を扱おうとしていました。私はリンカーに問題があると思った。 – TahaYusuf

+0

あなたは一度にあまりにも多くを試しているかもしれません。そのコードは古いか間違っている可能性があります。それを手助けする/更新する人にそれまで。 – TheGeekZn

答えて

12

私は同じ問題がありました。私は古いVisual Studio 2005 C++プロジェクトを持っていました。これはVisual Studio 2010 C++で再オープンしました。私にとっては、Microsoft Connectで提案されている最初の提案が働いた:

を問題は、リンク - > OutputFileは下のプロパティページで見つかった予期しない$(TARGETDIR)に由来します。ビルドプロセス中、OutputFileをフルパスに拡張しようとしましたが、空の値しか得られませんでした。したがって、インデックス外の例外が発生しました。

VS2010リリース以前にこれらを修正することはできません。回避策は、OutputPathを修正するか、親から継承することです。

プロジェクトを右クリックして、[プロパティ]> [リンカ]> [一般]に移動します。次に、 "出力ファイル"を "<親またはプロジェクトのデフォルトから継承>"に設定してください。

希望はあなたのためにもそれを修正します。

+1

優秀、出力ファイルのパスを変更して元の状態に戻し、すべてのソリューションで動作するようになりました。 –

0

私は何が間違っていたか把握できませんでした。このエラーを修正したのは、構成を削除して新しいものを作成することだけでした。 したがって、構成マネージャーではビルドしないものを削除し、同様のものから再作成しました。

関連する問題