Как стать автором
Обновить

Комментарии 11

Доводы «надо сделать компиляцию» несостоятельны (усложнили пример лишним мусором и т.д.). А «компиляцию» сделать как написано в MSDN. К чему нам тут перепечатывать его?
код
 static void Main(string[] args)
        {
            if (args.Length == 0)
            {
                var process = new Process();
                process.StartInfo.FileName = Assembly.GetExecutingAssembly().Location;
                process.StartInfo.Arguments = "second";
                process.Start();
                if (!process.WaitForExit(900))
                {
                    System.Threading.Thread.Sleep(500);
                    process.Kill();
                }
            }
            else if (args[0]=="second")
            {
                System.Threading.Thread.Sleep(1000);
            }
        }

Извращение какое-то. Описываемая проблема «двух проектов» решается вот так:
public static void Main (string[] args)
{
	if (args.Length != 0 && args[0] == "second")
		Thread.Sleep(1000);
	else
	{
		var proc = Process.Start(typeof (Program).Assembly.GetModules()[0].FullyQualifiedName, "second");
		proc.WaitForExit(500);
		Thread.Sleep(1000);
		proc.Kill();
	}
}
Мне кажется или всё-таки jonie тебя опередил?
А вообще, мне больше интересно, что Microsoft ответит, если им прислать такой баг-репорт.
мне больше интересно, что Microsoft ответит, если им прислать такой баг-репорт
Вопрос о реакции по существу или о реакции на такой способ организации кода для повторения?
По существу. А именно, что ответит, в какие сроки, отписка это будет или что-то ещё.
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
или делайте по-другому
Как еще можно подождать завершения процесса, а потом его убить, чтобы при этом не было гонки?
НЛО прилетело и опубликовало эту надпись здесь
Сейчас самое время убрать топик в черновики.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий