Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Служба падает с ошибкой / 7 сообщений из 7, страница 1 из 1
14.06.2013, 17:24
    #38298166
Pavluha
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Служба падает с ошибкой
Служба падает с ошибками хотя при запуске как консольное приложение все работает на ура
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
protected override void OnStart( string[] args )
		{
			try
			{
				XML_Server.ThreadFactory.StartServer();
			}
			catch( Exception ex )
			{
				XML_Server.Logger.Write( "StartServer failed: " + ex.Message );
			}
		}



Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
public static void StartServer()
        {
            if (listener != null)
            {
                listener.Stop();
                listener = null;
            }
            if (listener != null)
            {
                serverLoop.Abort();
                serverLoop = null;
            }

            Logger.Write("Starting server");

            serverLoop = new Thread(new ThreadStart(ServerLoop));
            serverLoop.Start();
        }

private static void ServerLoop()
        {
            try
            {
                listener = new TcpListener(System.Net.IPAddress.Any, 5118);
                listener.Start();
                Logger.Write("Listener.Start");
            }
            catch (Exception ex)
            {
                Logger.Write("listener.Start failed: " + ex.Message + "\nEXIT SERVER LOOP!!!");
                return;
            }
            while (true)
            {
                Socket client = null;
                try
                {
                    client = listener.AcceptSocket();
                }
                catch (Exception ex)
                {
                    Logger.Write("AcceptSocket failed: " + ex.Message + "\nEXIT SERVER LOOP!!!");
                    return;
                }
                try
                {
                    client.ReceiveBufferSize = 1024 * 10;
                    ThreadPool.QueueUserWorkItem(ClientWorkThread, client);
                }
                catch (Exception ex)
                {
                    Logger.Write("QueueUserWorkItem failed: " + ex.Message);
                }
            }
        }



ошибки:
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
Имя журнала:   Application
Источник:      Application Error
Дата:          14.06.2013 15:22:49
Код события:   1000
Категория задачи:(100)
Уровень:       Ошибка
Ключевые слова:Классический
Пользователь:  Н/Д
Компьютер:     юзер-ПК
Описание:
Имя сбойного приложения: Service_xml.exe, версия: 1.0.407.1020, отметка времени: 0x4f7400f1
Имя сбойного модуля: KERNELBASE.dll, версия: 6.1.7601.17651, отметка времени 0x4e2111c0
Код исключения: 0xe0434352
Смещение ошибки: 0x0000d36f
Идентификатор сбойного процесса: 0xeac
Время запуска сбойного приложения: 0x01ce68f179e1aa63
Путь сбойного приложения: C:\Program Files\IT\XML_Setup\Service_xml.exe
Путь сбойного модуля: C:\Windows\system32\KERNELBASE.dll
Код отчета: be59e56b-d4e4-11e2-b4d4-001a4d3a953e
Xml события:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="Application Error" />
    <EventID Qualifiers="0">1000</EventID>
    <Level>2</Level>
    <Task>100</Task>
    <Keywords>0x80000000000000</Keywords>
    <TimeCreated SystemTime="2013-06-14T11:22:49.000000000Z" />
    <EventRecordID>4218</EventRecordID>
    <Channel>Application</Channel>
    <Computer>юзер-ПК</Computer>
    <Security />
  </System>
  <EventData>
    <Data>Service_xml.exe</Data>
    <Data>1.0.407.1020</Data>
    <Data>4f7400f1</Data>
    <Data>KERNELBASE.dll</Data>
    <Data>6.1.7601.17651</Data>
    <Data>4e2111c0</Data>
    <Data>e0434352</Data>
    <Data>0000d36f</Data>
    <Data>eac</Data>
    <Data>01ce68f179e1aa63</Data>
    <Data>C:\Program Files\IT\XML_Setup\Service_xml.exe</Data>
    <Data>C:\Windows\system32\KERNELBASE.dll</Data>
    <Data>be59e56b-d4e4-11e2-b4d4-001a4d3a953e</Data>
  </EventData>
</Event>

Имя журнала:   Application
Источник:      .NET Runtime
Дата:          14.06.2013 15:22:47
Код события:   1026
Категория задачи:Отсутствует
Уровень:       Ошибка
Ключевые слова:Классический
Пользователь:  Н/Д
Компьютер:     юзер-ПК
Описание:
Приложение: Service_xml.exe
Версия платформы: v4.0.30319
Описание. Процесс был завершен из-за необработанного исключения.
Сведения об исключении: System.IO.FileNotFoundException
Стек:
   в XML_Server.ThreadFactory.ClientWorkThread(System.Object)
   в System.Threading.QueueUserWorkItemCallback.WaitCallback_Context(System.Object)
   в System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
   в System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
   в System.Threading.ThreadPoolWorkQueue.Dispatch()
   в System.Threading._ThreadPoolWaitCallback.PerformWaitCallback()

Xml события:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name=".NET Runtime" />
    <EventID Qualifiers="0">1026</EventID>
    <Level>2</Level>
    <Task>0</Task>
    <Keywords>0x80000000000000</Keywords>
    <TimeCreated SystemTime="2013-06-14T11:22:47.000000000Z" />
    <EventRecordID>4217</EventRecordID>
    <Channel>Application</Channel>
    <Computer>юзер-ПК</Computer>
    <Security />
  </System>
  <EventData>
    <Data>Приложение: Service_xml.exe
Версия платформы: v4.0.30319
Описание. Процесс был завершен из-за необработанного исключения.
Сведения об исключении: System.IO.FileNotFoundException
Стек:
   в XML_Server.ThreadFactory.ClientWorkThread(System.Object)
   в System.Threading.QueueUserWorkItemCallback.WaitCallback_Context(System.Object)
   в System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
   в System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
   в System.Threading.ThreadPoolWorkQueue.Dispatch()
   в System.Threading._ThreadPoolWaitCallback.PerformWaitCallback()
</Data>
  </EventData>
</Event>
...
Рейтинг: 0 / 0
14.06.2013, 17:51
    #38298203
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Служба падает с ошибкой
Код: plaintext
Сведения об исключении: System.IO.FileNotFoundException

Проверяйте, что за файлы и где ищет эта ваша служба.
...
Рейтинг: 0 / 0
14.06.2013, 17:53
    #38298209
Pavluha
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Служба падает с ошибкой
Antonariy,

Сборка лежит рядом с файлом.
Сборку служба нашла, т.к в лог пишет о том, что Logger.Write("Listener.Start");
...
Рейтинг: 0 / 0
14.06.2013, 17:56
    #38298212
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Служба падает с ошибкой
Мало ли что где лежит. Запускайте filemon и ищите запросы от вашей службы к файлам, окончившиеся неудачей.
...
Рейтинг: 0 / 0
16.06.2013, 16:50
    #38299074
Alex Kuznetsov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Служба падает с ошибкой
PavluhaAntonariy,

Сборка лежит рядом с файлом.
Сборку служба нашла, т.к в лог пишет о том, что Logger.Write("Listener.Start");
Интересно, как же Вы читаете лог, если там даже указано:

Код: plaintext
1.
2.
Сведения об исключении: System.IO.FileNotFoundException
Стек:
    в XML_Server.ThreadFactory.ClientWorkThread(System.Object) 

Вы же наверняка имеете доступ к исходникам XML_Server.ThreadFactory.ClientWorkThread...
Вот там и отлавливайте свою ошибку.
...
Рейтинг: 0 / 0
17.06.2013, 09:58
    #38299415
Pavluha
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Служба падает с ошибкой
Alex Kuznetsov,

Исходники есть и по шагам все работает как часы.
Запуск делаю из консоли так:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
                static void Main( string[] args )
		{
			XML_Server.ThreadFactory.StartServer();

			Console.WriteLine( "Press Enter to exit app..." );
			Console.ReadLine();

			XML_Server.ThreadFactory.StopServer();
		}
...
Рейтинг: 0 / 0
17.06.2013, 10:47
    #38299518
Pavluha
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Служба падает с ошибкой
Всем спасибо, нашел ошибку.
Одной библиотеки не хватало
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Служба падает с ошибкой / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]