2011-01-10 15 views
5

Mam prostą aplikację vb.net. Kiedy idę do bin \ debug \ program.exe i dwukrotnie kliknij program działa idealnie. Ten sam program nie zostanie wykonany przy użyciu harmonogramu zadań. Kiedy utworzę zaplanowane zadanie i kliknę "uruchom", po prostu pojawi się okno konsoli na sekundę, zamknie się. Dodatkowo ten sam program był używany do uruchamiania z harmonogramem zadań. Pewnego dnia po prostu przestał działać.Zaplanowane zadanie nie zostanie uruchomione zwraca e0434f4d jako ostatni wynik

ps:
mam ten kod programu zarządzanego w SVN, więc mogę śmiało powiedzieć, że kod nie został zmieniony.

+0

Jeśli to możliwe, czy próbowałeś uruchomić tę samą aplikację na innym komputerze? Czy twój program potrzebuje uprawnień administratora? Co robi program? Jaki jest twój system operacyjny (Vista, Win 7)? Czy możesz podać nam więcej szczegółów. – Searock

+0

naprawienie lokalizacji w uruchomionym polu tekstowym rozwiązało problem. Przetestowałem to i jeśli utworzysz zadanie, które wskazuje na plik exe, który nie istnieje, otrzymasz komunikat "could not start". Więc nie wiem, jak otrzymałem kod błędu, który otrzymywałem. –

Odpowiedz

3

Osobiście nie wierzę w magię :-)

  1. dwukrotnie sprawdzić, że kod źródłowy jest niemodyfikowane porównując do pracy wersji.
  2. Czy jesteś pewien, że program został w ogóle wykonany? Może być kilka problemów związanych z uprawnieniami (z których użytkownik wykonuje program i tak dalej).
  3. (jeśli # 2 przechodzi) Spróbuj debugować, aby zobaczyć, co powoduje problem.
+0

1. Zrobiłem podwójną kontrolę. Zawsze dobry pomysł.
2. Uruchom program przy użyciu debugowania f5, uruchomiono poprawnie
3. Uruchom wersję z folderu bin \ debug, który działał poprawnie.
4. ponownie ponownie skopiować i wkleić polecenie uruchamiania z Eksploratora Windows do właściwości uruchamiania zadania .... naprawione. –

+0

.. i dlatego ty (to znaczy mnie) zawsze należy sprawdzić wszystko (nawet rzeczy oczywiste). –

17

Kod zakończenia 0xe0434f4d jest dość znaczący. To jest rodzimy kod wyjątku dla zarządzanego wyjątku. Innymi słowy, twoja aplikacja ulega awarii z nieobsługiwanym wyjątkiem, gdy jest uruchamiana przez menedżera zadań. Mogę się domyślić, z jakich powodów, ale jest to dość bezcelowe. Dowiedz się, napisz procedurę obsługi zdarzeń dla AppDomain.CurrentDomain.UnhandledException i zapisz wartość e.ExceptionObject.ToString(). To daje komunikat wyjątku i ślad stosu, prawie zawsze wystarczająco dobry, aby dowiedzieć się, dlaczego to bombardowanie.

0

Chciałbym sprawdzić, w którym z użytkowników uruchomione jest zaplanowane zadanie. Być może działa on z kontem, którego hasło wygasło (jak już wcześniej mówiono) i wymaga zmiany.

1

W rzeczywistości ten problem został spowodowany przez uprawnienia. Jako zaplanowane zadanie zadanie nie miało uprawnień do niektórych folderów i plików.

0

Jedną z rzeczy, które zauważyłem w przypadku niektórych zaplanowanych zadań w Windows 2000 i Windows XP, jest to, że za każdym razem, gdy komputer jest ponownie uruchamiany, musimy ponownie wprowadzić hasło do niektórych zadań. Inni nadal pracują bez niego i nigdy nie zauważyłem różnicy.

Powiązane problemy