プログラムに、エントリポイントに適した静的な「Main」メソッドが含まれていない


169

突然、私のプロジェクト全体がコンパイルを停止し、次のメッセージが表示されました。

プログラム「path_to_obj_project_folder」には、エントリポイントに適した静的な「Main」メソッドが含まれていません

プロジェクトのプロパティは変更せず、いくつかのクラスを追加し、他のいくつかのクラスをフォルダーに移動しました。そのWPFアプリケーションプロジェクトなので、すべて問題ないはずです。エントリポイントは本来あるべき場所です。ファイルApp.xamlはまったく変更されていません:(

再度機能させるにはどうすればよいですか?

回答:


432

App.xamlのプロパティを確認します。ですBuild ActionまだApplicationDefinition


10
おかげで、問題が部分的に修正されました。すべてのファイルを古いプロジェクトから新しいWindows Store AppプロジェクトにコピーしましたBuild Actionが、Pageではなくに設定されましたApplicationDefinition。に切り替えましたがApplicationDefinition、フォルダも削除する必要がありましたobj\Debug
リチャードH

4
+1:すばらしい!本当に命の恩人。新しいプロジェクトを作成してすべてをコピーしようとしていましたが、これでうまくいきました。私が学んだこと:App.xamlをいじらないでください...
2014

1
また、obj \ Debugを手動で削除する必要がありました。RebuildAllは、何のアイデアをそれを修正しないしなかった理由...
ジェイBorseth

VS 2017 UWPアプリケーションでも同じ問題。ビルドは次の目的PageではありApplicationDefinition
ませんでした

2
Build ActionスイッチPageあなたは除外するとApp.xamlファイルを再含む場合
CSharper

46

おそらく、プロジェクトのプロパティ->アプリケーションの「出力タイプ」は、コンソールまたはWindowsアプリケーションではなく「クラスライブラリ」でなければなりません。


CLIコンパイラを使用する場合、クラスライブラリの出力タイプを-t:library引数で指定できます。
Glutexo

21

誰かが同じ問題を抱えている場合に備えて...私はこのエラーを<Application.Resources>受け取りました、そしてそれは私のApp.xamlファイルにあることがわかりました。リソースディクショナリタグの外にリソースがあり、それがこのエラーの原因でした。


少し違うバリエーションがありました。空のApplication.Resourcesタグがあり、それらを削除して修正しました。
YC

6

私の場合(アプリケーションの名前空間を手動で名前変更した後)、プロジェクトのプロパティでスタートアップオブジェクトを再選択する必要がありました。


1

VS 2010(ベータ1)で開始され、その後VS 2008に移行されたWPFプロジェクトで作業している場合にも、この問題が発生する可能性があります。

プロジェクトのプロパティの下で、.NET Frameworkのバージョンが設定解除され(.NET 4.0はVS 2008では無効であるため)、何らかの理由でこのエラーが発生します。

.NETフレームワークを(.NET 3.5などに)設定すると、エラーはなくなります。


1

上記のすべてのヘルプを使用しても誰かが同じエラーを引き続き発生する場合があるので、私はこの問題を抱えていました、ここに記載されているすべての解決策を試してみました不足している画像がスプラッシュスクリーンになるように設定しました。パスを正しいものに変更しただけで、すべてが機能し始めました)


1

同じエラーが発生しましたが、Mainメソッドで大文字のMではなく小さなmを入力したことがわかりました


大文字と小文字が区別されることを忘れました。ありがとう!
EmanuelVintilă、2015年

むしろ、アプリケーションの「プロパティ」がデフォルトの起動プロジェクト/クラスが正しく定義されているかどうかを確認してください。stackoverflow.com/questions/9538404
Bimal Poudel 2016

0

プロジェクトプロパティ\出力ファイル->クラスライブラリの選択:)


0

何と言っても、pixparkerは言いたかったのですが、はっきりとは言えませんでした。少なくとも、私にとっては... すべての「その他のプロジェクト」「出力タイプ」「クラスライブラリ」に選択されていることを確認してください... 「1つのプロジェクト」のみが「ウィンドウアプリケーション」または「コンソールアプリケーション」の出力として選択されています。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.