| Zitat: | 
		  | Ich hab ein C# Projekt. | 
Projekt Nr.1
	  | Zitat: | 
		  | Dieses startet per SPS einen Test | 
Aufgabe 1 des Projekt Nr.1: Auf einer Speicherprogrammierbaren Steuerung(SPS) eine Funktion "Test" aufrufen?
	  | Zitat: | 
		  | und übergibt mir einen Wert zb False oder True | 
Aufgabe 2 des Projekt Nr.1: Einen Wert an "mir" übergeben. Wer ist "mir" ?
	  | Zitat: | 
		  | und dieser Wert soll getestet werden. | 
Von "mir" nimmt man an? Mit was soll verglichen werden? Mit dem Ergebnis der Funktion "Test" der SPS?
	  | Zitat: | 
		  | Ich muss einen Test-Projekt also eine *.dll erstellen, | 
Es gibt also ein Test-Project, nennen wir es Projekt Nr.2, 
das eine DLL benötigt die von dir erstellt werden soll Projekt Nr.3
	  | Zitat: | 
		  | dass mein Projekt ausführt und den Wert übergibt und Assert vergleicht. | 
Also mit "mein Projekt" ist hier ist wohl Projekt Nr.1 gemeint und damit ist auch das Rätsel um "mir" gelöst.
Projekt Nr.1 gibt einen Wert zurück
	  | Zitat: | 
		  | Also wenn Wert = true dann Test erfolgreich | 
Project Nr.3 vergleicht den Rückgabewert und Prüft das Ergebnis mit Assert()
	  | Zitat: | 
		  | Hoffe war bisschen ausführlicher. | 
Eher verwirrend..., versuch die Gedanken zu ordnen bevor du den Sachverhalt beschreibst.
Wer sind die Beteiligten, wer hat welche Aufgabe.
Zum eigentlichen Problem:
	  | Zitat: | 
		  | Urgendwie hab ich das Problem das Projekt vorher starten zu lassen und sofort danach den Test ausführen zu lassen. | 
- Die DLL (Projekt3) wird vom Testframwork (Projekt2) geladen.
- Das Testframwork ruft eine von der DLL exportierte Testfunktion auf.
- Die Testfunktion startet Projekt1 (z.B. per CreateProcess eventuell mit Parameter), wartet auf das Beenden des Programms und wertet den Rückgabewert aus (GetExitCodeProcess).
- Projekt1 erkennt beim Start z.B. auf Grund des Parameters was zu tun ist und beendet sich danach mit entsprechendem Rückgabewert.
Wo ist jetzt das konkrete Problem?