Wert von Startparameter abfragen

27/04/2010 - 12:04 von Manuel Kobloch | Report spam
Hallo,

ein Programm von mir wird mit mehreren Startparametern gestartet. Da es sich
nicht nur um Schalter handeln, sondern manche Parameter auch Werte haben,
müssen diese ausgelesen werden. Da ich keine .Net Klasse dafür gefunden
habe, programmierte ich meine eigene Klasse. Zugegeben... es ist sehr
simpel. Mit RegEx geht es sicherlich besser, aber ich komme damit nicht klar
und werde ich wohl auch nie.

Bisher tat meine Klasse bisher die Arbeit tadellos. Doch jetzt muss ein
Dateipfad als Startparameter übergeben werden, was meine Klasse jedoch nicht
kann, da das Doppelpunkt entfernt wird. Jetzt dachte ich mir doch, dass
bestimmt jemand anderes von den Experten hier, schon eine toll
funktionierende Klasse dafür hat.

Startparameter könnte so aussehen meinprogramm.exe /log /console
/d:"c:\program files(x86)\meinProgramm" /e

Meine bisherige Klasse sah so aus:

internal static string HoleWertVomStartParameter(string strParameter)
{
try
{
String[] strStartParam = Environment.GetCommandLineArgs();

for (int i = 1; i < strStartParam.Length; i++)
{
if (strStartParam[i].StartsWith(strParameter,
StringComparison.OrdinalIgnoreCase))
{
string strParamGesamt = strStartParam[i];

//den Text hinter dem Hauptparameter
string strUnterParameter =
strParamGesamt.Substring(strParameter.Length, strParamGesamt.Length -
strParameter.Length);

//den Doppelpunkt vorm Unterparameter entfernen
strUnterParameter = strUnterParameter.Replace(":", "");

return strUnterParameter;
}
}
return null;
}
catch (NotSupportedException)
{
return null;
}
}
 

Lesen sie die antworten

#1 Manuel Kobloch
27/04/2010 - 12:10 | Warnen spam
Statt Klasse meinte ich natürlich Methode... bevor mir das jemand ankreidet
hehehe

Grüße

Manuel

Ähnliche fragen