|
■No99558 (taku さん) に返信 > ネット上にあるソースをコピーして貼り付け
具体的にはどのソースですか?
> C:\Users\TsujinoMasahiro\source\repos\2022_0426 2244\Program.cs 19 該当なし
Program.cs の 19 行目ということは、既定では 「Application.Run(new Form1());」 と書かれた行の事ですね。で、この Form1 が見つからない状態である、と。
また、フォルダー構成を見る限りでは、新規プロジェクト作成時において ソリューションとプロジェクトを同一ディレクトリに作成するモードを選択されたのですね。
(1) まず初めに、Visual Studio のソリューション エクスプローラーにおいて、 そのプロジェクト内に Form1.cs が含まれているかどうかを確認してください。 含まれていないのなら、それがエラーの原因です。
(2) また、1 つのソリューション内に 1 つのプロジェクトしかない状態なのか、 それとも、1 つのソリューション内に複数のプロジェクトが存在している状態なのかが もし分かれば教えてください。(もしも複数のプロジェクトである場合、今見ている Form1 と エラーメッセージが示している Form1 は、別のプロジェクトのものなのかもしれません)
さて今回の場合、プロジェクト名として指定された "2022_0426 2244" という名前が少々気にかかります。
「数字のみで構成されたプロジェクト名」や 「数字で始まるソリューション名」や 「空白を含むプロジェクト名」は避けてください。
C# のクラスや名前空間あるいは変数などの名前の先頭文字が 数字になることや、空白を含むことが許可されていないためです。
プロジェクト名が "2022_0426 2244" の場合、 アセンブリ名: "2022_0426 2244" 既定の名前空間: "_2022_0426_2244" の形でプロジェクトが生成されます。使用できない文字は "_" に置き換わって 生成されるので、一応問題は無いのですが、C# の命名ルールには沿わないので そのような名前は避けておいた方が無難でしょう。
いずれにせよ、新規プロジェクトの名前を "2022_0426 2244" にしていた場合、各ファイルは
// ----- Form1.cs ----- namespace _2022_0426_2244 { public partial class Form1 : Form { // …… } }
// ----- Program.cs ----- namespace _2022_0426_2244 { static class Program { [STAThread] static void Main() { // …… Application.Run(new Form1()); } } }
のように記述されていたはずです。
これは、エントリポイント (Program の Main メソッド)から呼ばれる Form1 が、 フルネームでは "_2022_0426_2244.Form1" という名前になることを意味します。
『ネット上にあるソースをコピーして貼り付け』た時に、この namespace の部分を、 誤って書き換えていないかを確認してみてください。Form1 の namespace(名前空間)を 書き換えてしまったことで、Application.Run(new Form1()); の Form1 が 変更前の namaespace 内に見当たらない状態になっているのだと推察しています。
|