У меня есть два приложения, которые оба обращаются к одной и той же базе данных.Один написан на C # и использует .NET-сервисы для подключения к базе данных;другой написан на C ++ и использует Qt для подключения.Я не эксперт по закулисным механизмам, поэтому я немного колеблюсь с конкретной проблемой.У меня проблема в том, что приложение .NET отлично работает удаленно, а приложение Qt - нет.
Проблема вызвана проблемой на стороне сервера, где есть некоторая странность с аутентификацией Windows.Приложение .NET подключается без запуска аутентификации Windows, но приложение Qt, очевидно, использует аутентификацию Windows, несмотря на все усилия, которые я предпринял, чтобы ее избежать.Очевидно, что если сервер был исправлен - что, мы надеемся, будет - проблема исчезнет, но у меня есть дополнительное приложение, которое мне нужно создать, которое должно предоставить доступ большему количеству пользователей, и я не могу справиться с этим.Аутентификация Windows для всех из них, поэтому мне нужно выяснить, как вообще избежать аутентификации Windows.
. Приложение .NET использует класс SqlDataAdapter со строкой подключения в формате «Источник данных = xxx.xxx.xxx.xxx; Начальный каталог = nnnn; Сохранять информацию о безопасности = True; ID пользователя = uuuuuu; Пароль = ppppp ".
Приложение Qt использует класс QSqlDatabase и строку подключения в формате "DRIVER = {SQL SERVER}; Сервер = xxx.xxx.xxx.xxx; База данных = nnnn; Идентификатор пользователя = uuuuuu; Пароль = ppppp".
Я пытался использовать формат" Источник данных "с приложением Qt, и он не работает.Я экспериментировал с различными параметрами, предложенными в других статьях (Trusted_Connection и Integrated Security), и независимо от того, что я делаю, приложение Qt всегда использует проверку подлинности Windows или вообще терпит неудачу.Когда происходит сбой, в сообщениях об ошибках указываются нераспознанные параметры в строке подключения.
Я потратил часы на поиск и эксперименты.Для будущего приложения, которое мне нужно написать, использование C # и .NET - жизнеспособный подход, но я гораздо лучше знаком с Qt и получу приложение, написанное намного быстрее, используя этот подход.Мне кажется, что я должен иметь возможность подключиться к серверу без прохождения проверки подлинности Windows, но сейчас я в растерянности.Любые предложения приветствуются.