
Вт май 07, 2013 6:50 pm Вт май 07, 2013 6:50 pm

Вт май 07, 2013 6:50 pm Вт май 07, 2013 6:50 pm

Вт май 07, 2013 6:51 pm Вт май 07, 2013 6:51 pm

Вт май 07, 2013 6:51 pm Вт май 07, 2013 6:51 pm
И еще, забыл спросить про версию сервера


Вт май 07, 2013 6:51 pm Вт май 07, 2013 6:51 pm

Вт май 07, 2013 6:52 pm Вт май 07, 2013 6:52 pm
Далее, раз вы говорите, что сервис запускается от имени пользователя, под которым вы запускаете "обычный" сервер, получается вашему пользователю при запуске сервиса не достаточно прав и ОС виртуализирует все действия в папку "C:\Users\am\AppData\Local\VirtualStore\ProgramData\MyChatServer\db".
Нужно запускать сервис, от имени какого-то системной уч. записи, которая будет иметь возможность писать в "C:\ProgramData\MyChatServer\db".

Вт май 07, 2013 6:53 pm Вт май 07, 2013 6:53 pm
В вашем случае, я предполагаю, не хватает прав у пользователя, под которым запускаете сервер чата как сервис. В результате сервис использует базу в виртуальном хранилище C:\Users\am\AppData\Local\VirtualStore\ProgramData\MyChatServer\db, а не из програм_дата, которая используется при запуске приложения в графическом (обычном) режиме. Поставьте в свойстве сервиса "Вход в систему" : "С системной учетной записью"

Вт май 07, 2013 6:53 pm Вт май 07, 2013 6:53 pm

Вт май 07, 2013 6:53 pm Вт май 07, 2013 6:53 pm
1) причина - сервис стартовал от имени администратора и использовалась база в C:\ProgramData\MyChatServer\db, а графический вариант запускался от имени пользователя и соответственно действия сервера виртуализировались в C:\Users\am\AppData\Local\VirtualStore\ProgramData\MyChatServer\db
2) перенесли базу из виртуального хранилища в C:\ProgramData\MyChatServer\db
3) при запуске сервиса появилась актуальная база
4) теперь запуск GUI сервера нужно выполнять через пункт контекстного меню "Запуск от имени администратора", чтобы работать с одной и той же базой.
Также можно поставить галку в свойстве ярлыка запуска сервера "Всегда запускать от имени администратора", чтобы было меньше действий и недоразумений.