Forms-Anwendung und Main-Parameter

hallo,

bin neu im bereich c#.
habe mal ein paar kleine anwendungen geschrieben. klappt auch soweit ganz gut. nur:

ich hab nen kleinen editor gebaut (forms-anwendung). wenn ich ne datei mit dem prog öffnen will, soll die datei im editor auch geladen werden. dazu habe ich die main überladen:

public static void Main(string[] args)

und hole mir die pfade aus args. ich habe das programm compiliert, aber:
wenn ich unter windows „öffnen mit…“ anklicke, das programm auswähle stehts nicht in der liste. kurz gesagt, es funktioniert nicht. ich kann keine dateien mit der forms-anwendung öffnen.

testweise hab ich das gleiche bei ner konsolenanwendung gemacht. da gehts.

also: wie schaffe ich es einer forms-anwendung startparameter zu übergeben?

danke für eure hilfe!

Hallo Stefan,

bei mir funktioniert’s unter .net 2.0 und XP:

Program.cs

using System;
using System.Collections.Generic;
using System.Windows.Forms;

namespace CSharpParm
{
 static class Program
 {
 /// 
 /// Der Haupteinstiegspunkt für die Anwendung.
 /// 
 [STAThread]
 static void Main(string[] args)
 {
 Application.EnableVisualStyles();
 Application.SetCompatibleTextRenderingDefault(false);
 Application.Run(new Form1(args));
 }
 }
}

Form1.cs

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace CSharpParm
{
 public partial class Form1 : Form
 {
 public Form1(string[] args)
 {
 System.Text.StringBuilder sbArgs;

 InitializeComponent();

 sbArgs = new System.Text.StringBuilder("Übergebene Parameter:");
 foreach (string arg in args)
 {
 sbArgs.Append("\n" + arg);
 }
 MessageBox.Show(sbArgs.ToString());
 }
 }
}

Gruß Thomas

danke

seltsam isses aber schon:
ich hab in meinem code die args nicht dem konstruktor übergeben sondern es in ner statischen member von Program abgelegt und von Form1 drauf zugegriffen. da gabs jetzt auch keine fehler, nur die anwendung tauchte nicht in der öffnenmit-liste auf als ich das prog ausgewählt hab.

aber mit deinem beispiel-code gehts wunderbar.
dank dir vielmals :smile: