Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Проблема с сервисом / 11 сообщений из 11, страница 1 из 1
10.10.2013, 09:18
    #38422360
GorloPavel
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с сервисом
Здравствуйте. Проблема такого плана. Есть некое приложение которое может автоматически обновляться.

Механизм такой:
Программа скачивает обновления в папку Upd в своей директории, далее оно вызывает глобальное событие в своей службе(Service) которая закрывает текущий процесс. Служба копирует все файлы из папки Upd в текущую папку приложения и заменяет файлы, если такие имеются и заново запускает процесс программы. Ранее все работало замечательно, теперь же почему-то Служба не может скопировать файлы. Т.е все скачивается, служба убивает процесс, пытается скопировать файлы, но ничего не выходит. Скорее всего StartUpdate возвращает false.

Процесс копирования:
Код: 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.
KillAppProcess();//Закрываем процесс
Thread.Sleep(10000);//На всякий случай ждем
                        
if (StartUpdate())
{
     StartAppProcess();
}

.............................

private bool StartUpdate()
{
            
            try
            {
                DirectoryInfo updateDir = new DirectoryInfo(Application.StartupPath+"\\Upd");
                
                foreach (FileInfo file in updateDir.GetFiles())
                {
                    file.CopyTo(Application.StartupPath + "\\" + file.Name,true);
                }
                
                updateDir.Delete(true);
                
                return true;
            }
            catch
            {
                return false;
            }

}


Но что самое интересное! Если я скомпилирую сборку этой самой службы и положу ее в каталог с установленным приложением(заменив оригинал из дистрибутива), то все работает. Дело в том что при изначально приложение было написано на VS2008(и установлена у пользователей), а файлы обновлений уже на 2010. Суть в том, что если я скомпилирую exe-шник службы на 2010 и положу вручную в этот каталог и запущу процесс по новой, то все обновляется замечательно. Т.е StartUpdate возвращает true. Причем код службы тот же самый. Не строчки изменений! В чем может быть проблема? Я уже голову поломал! Помогите разобраться пожалуйста. Заранее ОГРОМНОЕ СПАСИБО за советы!
...
Рейтинг: 0 / 0
10.10.2013, 11:10
    #38422587
Katapulta
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с сервисом
Если файлы копируются с/на сетевой диск, то, скорее всего, у сервиса нет прав доступа к сетевым дискам.
А вообще, с какой ошибкой обламывается копирование файлов?
...
Рейтинг: 0 / 0
10.10.2013, 11:36
    #38422649
Alex Kuznetsov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с сервисом
Katapulta...А вообще, с какой ошибкой обламывается копирование файлов?А вот это уже тайна покрытая смракойм, потому как исключения тупо глушатся и никакой информации никуда не выводится. Т.е. где логирование?
...
Рейтинг: 0 / 0
10.10.2013, 13:06
    #38422834
GorloPavel
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с сервисом
KatapultaЕсли файлы копируются с/на сетевой диск, то, скорее всего, у сервиса нет прав доступа к сетевым дискам.
А вообще, с какой ошибкой обламывается копирование файлов?
Из сети тянутся. Копируются в каталог в котором установлена программа C:/Program Files...
...
Рейтинг: 0 / 0
10.10.2013, 13:07
    #38422838
GorloPavel
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с сервисом
Alex KuznetsovKatapulta...А вообще, с какой ошибкой обламывается копирование файлов?А вот это уже тайна покрытая смракойм, потому как исключения тупо глушатся и никакой информации никуда не выводится. Т.е. где логирование?
Да, моя ошибка. Но уже ничего не поделаешь. Странно что если заменить файл сервиса только что скомпилированным, то все работает. Не могу понять почему так происходит.
...
Рейтинг: 0 / 0
10.10.2013, 13:24
    #38422869
Alex Kuznetsov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с сервисом
GorloPavelДа, моя ошибка. Но уже ничего не поделаешь. ... В смысле ничего не поделаешь? Исходники есть? Версия студии 2008 есть? Добавьте логирование ошибки, скомпилируйте в 2008-й студии и отловите ошибку...
...
Рейтинг: 0 / 0
10.10.2013, 15:02
    #38423043
GorloPavel
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с сервисом
Alex KuznetsovGorloPavelДа, моя ошибка. Но уже ничего не поделаешь. ... В смысле ничего не поделаешь? Исходники есть? Версия студии 2008 есть? Добавьте логирование ошибки, скомпилируйте в 2008-й студии и отловите ошибку...
Т.е разница в какой студии скомпилирован есть?
...
Рейтинг: 0 / 0
10.10.2013, 15:03
    #38423046
GorloPavel
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с сервисом
Права на файл прописаны в самом файле?
...
Рейтинг: 0 / 0
10.10.2013, 15:10
    #38423061
Alex Kuznetsov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с сервисом
GorloPavelAlex Kuznetsovпропущено...
В смысле ничего не поделаешь? Исходники есть? Версия студии 2008 есть? Добавьте логирование ошибки, скомпилируйте в 2008-й студии и отловите ошибку...
Т.е разница в какой студии скомпилирован есть?Очевидно, что имеется разница в компиляторе и линковщике, а также может быть разница в настройках проектов в разных версиях студии.
...
Рейтинг: 0 / 0
10.10.2013, 15:32
    #38423105
GorloPavel
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с сервисом
Alex KuznetsovGorloPavelпропущено...

Т.е разница в какой студии скомпилирован есть?Очевидно, что имеется разница в компиляторе и линковщике, а также может быть разница в настройках проектов в разных версиях студии.
Я понимаю, но какое отношение это имеет к файлам? Но все равно попробовать стоит.
...
Рейтинг: 0 / 0
10.10.2013, 15:33
    #38423106
GorloPavel
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с сервисом
Т.е проблема в том что новый файл сервиса может копировать файлы из папки, а старый новые файлы обновления нет. Странно.
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Проблема с сервисом / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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