Programowy restart aplikacji ASP.NET

Odpowiedz Nowy wątek
2015-01-17 10:35
0

Dzień dobry,

Czy istnieje jakiś sposób aby zrestartować aplikacje ASP.NET z poziomu kodu?

Pozdrawiam

edytowany 1x, ostatnio: kornik280, 2015-01-17 11:30

Pozostało 580 znaków

2015-01-17 10:43
0

Najprościej będzie chyba tak:

string path = System.Reflection.Assembly.GetExecutingAssembly().Location;
Process.Start(path);

Pozostało 580 znaków

2015-01-17 11:12
0

Dostaje exception na start.process o treści: "Z określonym plikiem nie skojarzono dla tej operacji żadnej aplikacji"

Pozostało 580 znaków

2015-01-17 11:32
0

Sprawdź co zwraca Ci pierwsze polecenie. W zmiennej "path" powinna być ścieżka do Twojego pliku ".exe".

Dla testów odpal sobie np notatnik:

Process.Start("notepad.exe");

Pozostało 580 znaków

2015-01-17 11:32
0

Bo prawdopodobnie wywołujesz ten kod w assembly, które jest dll-ką, nie exe.

Pozostało 580 znaków

2015-01-17 11:50
0

Tak scieżka jest do dll-ki.To jak to zrobić?

edytowany 1x, ostatnio: kornik280, 2015-01-17 11:50

Pozostało 580 znaków

2015-01-17 11:56
0

Zamiast GetExecutingAssembly() użyj GetEntryAssembly()

Pozostało 580 znaków

2015-01-17 12:33
0

Z

 System.Reflection.Assembly.GetEntryAssembly()

dostaje null

Pozostało 580 znaków

2015-01-17 16:04
0

A czemu w ogóle chcesz to zrobić? Może istnieje inny sposób na rozwiązanie Twojego problemu.


"HUMAN BEINGS MAKE LIFE SO INTERESTING. DO YOU KNOW, THAT IN A UNIVERSE SO FULL OF WONDERS, THEY HAVE MANAGED TO INVENT BOREDOM."

Pozostało 580 znaków

2015-01-17 17:53
0

Masz to dyspozycji jeszcze metodę

System.Reflection.Assembly.GetCallingAssembly

Nigdy jej nie używałem, ale wydaje się że zwróci Ci "Asembly" które woła Twojego ".dll".
Zwróć jednak uwagę że możesz być np. 7 w kolejce, tj plik.exe->jakiś.dll->...->ten.dll.

assembly = System.Reflection.Assembly.GetCallingAssembly();
if (assembly != null)
  path = assembly.Location;
if (path != null)
  Process.Start(path)

Ogólnie to powinieneś pobrać "jakieś" Assembly, ustawić breakpointa i po prostu obejrzeć je pod debuggerem.

edytowany 1x, ostatnio: lmarek, 2015-01-17 17:55

Pozostało 580 znaków

2015-01-17 17:54
ne0
0

http://weblogs.asp.net/scottgu/426755 Spróbuj tego


Pomogłem? To dobrze :)

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0