[ad_1]
(おそらく頭が悪いか、考えるには早すぎる)
ウィザードから直接、空の WPF プロジェクトに Main 関数 (エントリ ポイント) を追加しようとしています。
public partial class App { public static void Main(string[] args) { // do something... } }
エラーが発生します:
error CS0017: Program has more than one entry point defined. Compile with /main to specify the type that contains the entry point.
明らかな何かが欠けていますか? 何かをするために Main 関数を追加することはできませんか?
OnStartup を使用して同じことを実行できることはわかっていますが、Main が定義されたデモ/チュートリアル コードがあり、それが機能する理由がわかりません。
protected override void OnStartup(StartupEventArgs e) { base.OnStartup(e); }
私が試したこと:
/main の意味を正しく理解していれば、これを追加しました。
<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>WinExe</OutputType> <TargetFramework>net6.0-windows</TargetFramework> <Nullable>enable</Nullable> <UseWPF>true</UseWPF> <StartupObject>WpfApp3.App</StartupObject> </PropertyGroup> </Project>
解決策 1
メインはフレームワークによって提供されると思います。 Application.XAML ファイルは、起動時にどのウィンドウが自動的に読み込まれるかを定義します。 見る Visual Studio 2019 で最初の WPF アプリを作成する – .NET Framework | マイクロソフト ラーン[^]
解決策 2
Visual Studio が提供するプロジェクト テンプレートを使用して WPF アプリをビルドする場合、これは正常です。
これがあなたが望むものを達成する方法です: Main メソッドを使用した WPF アプリケーション[^]
[ad_2]
コメント