![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
niklep |
![]()
Сообщение
#1
|
Новичок Группа: Новичок Сообщений: 6 Регистрация: 11.4.2011 Пользователь №: 2590 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Доброго времени суток. Пишу службу под windows, которая должна, помимо других действий, создавать серверный сокет и слушать его на предмет соединений. С этим казалось бы проблем быть не должно. Однако, несмотря на то, что объект класса QTcpServer говорит мне, что он слушает порт, этого не происходит. Т.е. меня обманывают=)
Вот кусок кода:
Так вот. Ошибки не происходит, сокет создается. Последняя строка с qDebug() говорит следующее:
Тем временем netstat не видит открытого порта, nmap также, telnet также о_0 Что не так? Службе нужны какие-то привилегии для открытия порта? Так я ей уже указал под админом запускаться, без толку. P.S. Данный код для создания сокета прекрасно работает в моем маленьком тестовом проекте, здесь не хочет. |
|
|
![]() |
niklep |
![]()
Сообщение
#2
|
Новичок Группа: Новичок Сообщений: 6 Регистрация: 11.4.2011 Пользователь №: 2590 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Вот наткнулся на тему:
http://www.qtforum.org/article/27590/solve...l-not-work.html В ней говорится, что служба (и ее конфиг в моем случае) должны лежать в windows\system32. Я так и сделал, но проблема не исчезла. Запускать пробовал как из командной строки ключом -e, так и из апплета "Службы". Может еще есть какая-то хитрость с путями/правами? И еще: емеет ли значение, что в main-файле службы имеется следующий код:
А когда создаешь обычное приложение, то там
??? Ибо это единственное существенное различие в коде между службой и приложением (еще раз напомню, просто приложение у меня работает с этим классом ServerSocket) |
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 10.4.2025, 23:37 |