Entwickler-Ecke

C# - Die Sprache - Problem mit Sipsak.exe


gerhard_68 - Mo 16.08.10 10:32
Titel: Problem mit Sipsak.exe
Hallo,

um die Funktion Sipsak auszuführen gebe ich folgende Zeile in der Eingabeaufforderung ein.

sipsak-0.9.5.exe","-T -vvv -M -B Dies ist ein Test vom 11.08.2010 -c sip:100@192.168.1.13 -s sip:06506225019@192.168.1.31");

Der Text "Dies ist ein Test vom 11.08.2010" wird korrekt verschickt.

Ich rufe folgende Funktion mit c# auf:


C#-Quelltext
1:
Process.Start("c:\\sipsak-0.9.5.exe","-T -vvv -M -B Dies ist ein Test vom 11.08.2010 -c sip:100@192.168.1.13 -s sip:06506225019@192.168.1.31");                    

Es wird nur der Text "Dies" verschickt!!

Auch dieser Aufruf funktioniert nicht

C#-Quelltext
1:
Process.Start("c:\\sipsak-0.9.5.exe","-T -vvv -M -B"+" Dies ist ein Test vom 11.08.2010"+" -c sip:100@192.168.1.13 -s sip:06506225019@192.168.1.31");                    




Wer kann mir weiterhelfen?

LG

Gerhard

Moderiert von user profile iconChristian S.: C#-Tags hinzugefügt


Ralf Jansen - Mo 16.08.10 11:46

Um ein " in einem string zu escapen brauchst du 2 davon also "". In deinem zweiten gezeigten Process.Start Aufruf solltest du einfach mal das + weglassen.


gerhard_68 - Mo 16.08.10 12:13

Hallo,

danke für die Antwort, habe es probiert, geht leider nicht!




C#-Quelltext
1:
Process.Start("c:\\sipsak-0.9.5.exe""-T -vvv -M -B"  " Dies ist ein Test vom 11.08.2010"  " -c sip:100@192.168.1.13 -s sip:06506225019@192.168.1.31")                    

geht nicht

C#-Quelltext
1:
Process.Start("c:\\sipsak-0.9.5.exe""-T -vvv -M -B" , " Dies ist ein Test vom 11.08.2010"  ," -c sip:100@192.168.1.13 -s sip:06506225019@192.168.1.31");                    

geht auch nicht!

Vielleicht hat noch jemand einen Vorschlage

Moderiert von user profile iconChristian S.: C#-Tags hinzugefügt


Greenberet - Mo 16.08.10 12:42


C#-Quelltext
1:
Process.Start("c:\\sipsak-0.9.5.exe","-T -vvv -M -B \"Dies ist ein Test vom 11.08.2010\" -c sip:100@192.168.1.13 -s sip:06506225019@192.168.1.31");                    


btw. Danke für deine Handynummer


gerhard_68 - Mo 16.08.10 14:57

Danke, jetzt gehts!!


gerhard_68 - Mo 16.08.10 15:21

Noch eine Frage, wie bekomme ich den Inhalt einer Textbox in den Funktionsaufruf?


C#-Quelltext
1:
2:
3:
4:
string i=Textbox1.ToString();


Process.Start("c:\\sipsak-0.9.5.exe","-T -vvv -M -B \"i\" -c sip:100@192.168.1.13 -s sip:06506225019@192.168.1.31"); // Der String wird so nicht erkannt!


Moderiert von user profile iconChristian S.: C#-Tags hinzugefügt


gerhard_68 - Mo 16.08.10 16:23

Ich habe es mit der Insert Methode geschafft!!


string hge = ("-T -vvv -M -B \"\" -c sip:100@192.168.1.13 -s sip:06506225019@192.168.1.31");
hge = hge.Insert(15, textBox1.Text.ToString());


Process sipsak = new Process();
sipsak.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
sipsak.StartInfo.FileName = "c:\\sipsak-0.9.5.exe";
sipsak.StartInfo.Arguments = hge;
sipsak.Start();


Ralf Jansen - Mo 16.08.10 16:39

Üblicherweise würde man eher string.Format [http://msdn.microsoft.com/de-de/library/fht0f5be.aspx] dafür verwenden.


C#-Quelltext
1:
string hge = string.Format("-T -vvv -M -B \"{0}\" -c sip:100@192.168.1.13 -s sip:06506225019@192.168.1.31", textBox1.Text);                    


gerhard_68 - Di 17.08.10 08:39

Du hast recht, Danke!