А можно подробней? Имеем ситуацию: Василий авторизовался в Windows, запустил браузер и зашёл на страницу портала. Каким образом WEB-сервис поймёт, что это Василий?
Я тоже думал о ситуации с вредоносным javascript, но разве Microsoft Security Essentials защищает от подобных атак? Вот что написано в википедии: "...it was not able to stop all Internet-based attacks because it lacks personal firewall ..."
Установил mingw (Basic setup). Компилятор автоматически появился в списке компиляторов QT-Creator. Собираю драйвер:
D:\CallCentreProject\qtsrc\qtbase\src\plugins\sqldrivers\mysql>set mysql=C:\PROG
RA~1\MySQL\MYSQLS~1.6\
D:\CallCentreProject\qtsrc\qtbase\src\plugins\sqldrivers\mysql>qmake "INCLUDEPAT
H+=%mysql%\include" "LIBS+=%mysql%\lib\opt\libmysql.lib" -o Makefile mysql.pro
Выполняется без ошибок, появляются файлы и папки для компиляции.
Далее ввожу mingw32-make и вот что он выдаёт:
В интернете пишут, что это может быть из-за того, что сборка и компиляция выполняются утилитами из разных пакетов. И действительно, qmake.exe находится в папке "msvc2010_opengl\bin", следовательно он принадлежит пакету Microsoft Visual Studio. Так какого чёрта во всех инструкциях, которые я находил приведен пример именно с qmake?
Уже целый день убил безрезультатно. Может забить и скачать пиратку QT-Creator Enterprise-версии, туда вроде входит драйвер mysql. Что посоветуете?
Значит всё таки устанавливать mingw ради драйвера mysql? Или просто использовать mingw для компиляции sql-библиотек и не подключать к QT-creator? Так получится сделать?
И вот, спустя две недели, я близок к завершению проекта. Всё получилось: чтение com-порта, отправка и приём уведомлений по TCP, удобные окошки, таблицы, кнопочки. Но, блин, никак не могу скомпилировать драйвер для MySql.
При запуске проекта qtcreator выдаёт ошибку:
QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QMYSQL ...
То-есть, драйвер доступен, но не загружен.
В инклудах указал:
#include
#include
#include
Перечитал кучу инструкций, форумов: все они относятся либо к старым версиям QT, либо к компилятору mingw. А у меня по умолчанию установлен MSVC и соответственно свежая версия QT 5.4.1. Я собрал драйвер из библиотек MySql командой qmake, но как его скомпилировать? Файл nmake нахожу в папке компилятора Microsoft Visual Studio. Если копирую в папку с этим файлом собранные исходники и запускаю nmake, то выдаёт ошибку: "не хватает сведений для построения...", если наоборот, копирую nmake.exe в папку с исходниками, то выдаёт ""rc" не является внутренней или внешней командой...".
Думал установить компилятор mingw, но судя по инструкциям, он тоже непросто ставится.
Как мне поступить?
Армянское Радио: Панасоник на работе и не подключён к серверу пока. И, я признателен за помощь, но хочу сделать сам. Практический опыт - очень ценная вещь.
Армянское Радио: Лишние задержки не есть хорошо. И, думаю, у меня больше проблем будет с написанием клиентской части. Так что буду писать с нуля
Насчёт третьего пункта: а что если скрипт, обслуживающий события от ком-порта, будет вызывать другой скрипт, обслуживающий TCP, не дожидаясь его завершения? Типа, принял строчку по COM-порту и отправил её в другой скрипт, а сам принимает следующую? Решит ли это проблему?
Армянское Радио: Предложение заманчивое, но есть два вопроса:
1. Сможет ли секретарь получить уведомление с задержкой, не больше полсекунды?
2. Попадают ли в базу строчки о поступлении звонка (ещё до поднятия трубки)?
Если нет, то придётся писать серверную часть.
Есть мысль попробовать сделать это на bash. Например, так:
while read -r line < /dev/cuau1; do
# отправляем $line в качестве аргумента обработчику
done
Обработчик тоже написать на bash, который будет командой "nc" отправлять данные клиенту по tcp-протоколу. Но возникает вопрос задёжности: не будет ли скрипт пропускать символы/строки? И можно ли будет обеспечить контроль доставки tcp-пакетов таким образом?
Армянское Радио: Имеется ввиду разрыв соединения между клиентом и сервером? Так он не повлияет на ведение лога: этим будет заниматься сервер без участия клиента. Клиент будет только получать уведомления о звонках и править БД клиентов при необходимости. То-есть будет две таблицы: собственно лог звонков и перечень клиентов. Они будут обрабатываться вместе только для отчётов: будут сопоставляться номера из лога и номера из перечня клиентов.
Армянское Радио: телепат ) Да, панасоник. А какие варианты? Фирменное ПО для KX-TDA100 уже не продаётся. Пиратки не нашёл. Так что приходится делать самому.
Возможно действительно лучше слать по TCP. Линуксовая команда "nc" умеет это делать. Надо бы почитать доки про TCP.
Значит буду смотреть в сторону QT. А язык какой лучше выбрать, чтобы не палить из пушки по воробьям? У qt есть варианты для разных языков.