Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
6 / 6 / 2
Регистрация: 11.04.2011
Сообщений: 260
1

Служба некорректно работает в Windows 7

16.09.2014, 09:43. Показов 1143. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день!
Помогите пожалуйста, не знаю что делать.
Состряпал службу на C#. Две основные её функции это создание прослушки на 502 порту и использование API функций при помощи [DllImport].
При помощи функций API служба "тянула" данные из скада системы Citect. На ХР работало всё отлично. Поставил службу на 7ку, перестала работать прослушка. Т.е. по логу видно что всё без ошибок, но клиенты её не видят. Грешу только на брендмауер. Других вариантов нету.
Но самое грустное, что перестало подключаться к Citect. Хотя должно. Перепробовал всё. Пересобирать под X86, запускать службу из папки Citect (мало ли, библиотек каких то не хватает), вырубал брендмауер. Не коннектится. На моей машине с ХР всё ок.

Объявляю необходимые функции:

C#
1
2
3
4
5
6
7
// открыть соединение с Citect
[DllImport("CtApi.dll", CallingConvention = CallingConvention.Cdecl, SetLastError = true)]
        public static extern bool ctOpenEx(string sComputer, string sUser, string sPassword, UInt32 nMode, IntPtr hCTAPI);
 
//создать клиента
[DllImport("CtApi.dll", CallingConvention = CallingConvention.Cdecl, SetLastError = true)]
        public static extern IntPtr ctClientCreate();
Собственно как оно подключается к Citect:

C#
1
2
3
4
5
6
7
CiClient = ctClientCreate(); // создаю клиент
                FailConnect = ctOpenEx(null, null, null, 0, CiClient); // открываю соединение с Citect. В FailConnect пишется true в случае успешного открытия, в противном случае false
                if (!FailConnect)
                {
                    int error = Marshal.GetLastWin32Error(); // в лог пишется переменная error в которой находится значение "2".
                    WriteToLog(error.ToString());
                }
Помогите пожалуйста что делать. Семёрка обычная 32 разрядная. Dll-ки тоже 32х разрядные те, что и на XP.
Заранее спасибо!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.09.2014, 09:43
Ответы с готовыми решениями:

Служба Windows, не работает метод, дебаггер молчит
Добрый день. Служба Windows установлена под правами Локальной системы (пробовал и под правами...

Некорректно работает File.Exists при загрузке Windows
Доброго четверга всем. Программа при запуске проверяет наличие файла через File.Exitst. Дело в том,...

Некорректно работает служба общего доступа к подключению к интернету (ICS) в Windows 7
Здравствуйте! Пытаюсь раздать WiFi с ноутбука через роутер ZyXEL Keenetic, делаю всё по инструкции...

Не работает служба Планировщик заданий в Windows XP
Доброго времени суток, уважаемые форумчане. Потребовалось установить ОС на компьютер. Выбор пал на...

1
Ушел с форума
Эксперт С++
16473 / 7436 / 1187
Регистрация: 02.05.2013
Сообщений: 11,617
Записей в блоге: 1
16.09.2014, 09:51 2
Между XP и Vista/7 по части служб только одно принципиальное отличие -
"Session 0 Isolation". На XP первый пользователь, вошедший в систему,
работает в сессии 0, и в этой же сессии работают службы.
На Vista и выше службы работают в сессии 0, а пользователи логинятся в
сессиях 1, 2, 3 и т.д. Может, проблема связана с этим ?

Добавлено через 1 минуту
Проверяется так: на Windows XP нужно войти в систему двумя пользователями и
попробовать подключиться к службе из-под второго (у него ID сессии будет 1 или выше).
Если также будет ошибка, как и на Win 7, значит проблема точно в изоляции сессий
друг от друга.
1
16.09.2014, 09:51
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.09.2014, 09:51
Помогаю со студенческими работами здесь

Не работает служба установщик модулей Windows
Не работает установщик модулей Windows. Как он связан с Trustedinstaller?

Windows Vista некорректно работает
Привет всем! помогите пожалуйста после востановления системы не могу зайти в виндовс нажимаю при...

Некорректно работает сон (Windows 7 x64)
Сразу после перехода в режим сна комп обратно включается. Такая же проблема была на прошлом...

WOT некорректно работает на Windows Vista
Когда запускаю инсталер WOT вылезает вот это: http://C:\Users\Family\Pictures\Безымянный.jpg знаю...

Некорректно работает Turbo Pascal на Windows XP
Здравствуйте. На уроке информатики некорректно работает Turbo Pascal, на нём можно набрать текст,...

Новая GT440 некорректно работает в Windows 7/8
Всем доброго времени суток. Купил сегодня видеокарту ASUS GT440 1 Gb 128 bit (до этого стояла 8600...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru