|
Старое VB6 приложение не хочет авторизироваться в MS SQL 2008R2
|
|||
---|---|---|---|
#18+
Попробовал вообще удалить пароль у пользователя (сделать его пустым), приложение смогло подключиться... ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2021, 00:15 |
|
Старое VB6 приложение не хочет авторизироваться в MS SQL 2008R2
|
|||
---|---|---|---|
#18+
Allan Stark, I. Установка для приложения уровня совместимости с предыдущими версиями ОС в этом случае мало что дает. Программа и так запускается. Если нужный протокол не включен в ОС, то эта операция его не включит. II. Если учетная запись, с которой вы вошли в Windows 10, это обычный пользователь, то попробуйте повысить ему права до опытного пользователя. Часто это помогает, особенно в рабочих группах. III. Я рекомендую такой способ проверки связи с SQL Server: 1. Создаете на рабочем столе файл текстовый файл и задаете ему имя a.udl (здесь важно не имя, а расширение файла - UDL). 2. Открываете его двойным щелчком мыши. Далее для русскоязычной ОС. Появится окно "Свойства канала передачи данных". 3. На вкладке "Поставщик данных" выбираете нужного поставщика. В данном случае "Microsoft OLE DB Provider for SQL Server". 4. На вкладке "Соединение": - в пункте 1 вводите имя или IP-адрес вашего SQL сервера (не забудьте, что бывают именованные экземgляры) - в пункте 2 выбираете "встроенную безопасность Windows NT" (надеюсь такой пользователь у вас в SQL Serverе есть) - щелкаете на кнопке "Проверить соединение" Если получили ответ "Проверка соединения выполнена", то рельсы к с SQL Serverу есть и по ним ходят трамваи. В противном случае или рельсы разобрали или трамвай из депо не выпустили, поэтому что-то делать с программой бесполезно. 5. Если пункт 4 успешно прошли, то поэкспериментируйте с именем и паролем пользователя. 6. Если пункты 4 и 5 успешно пройдены, то можно разбираться с программой. 7. Можно поэкспериментировать с другими поставщиками. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2021, 09:32 |
|
Старое VB6 приложение не хочет авторизироваться в MS SQL 2008R2
|
|||
---|---|---|---|
#18+
alexeyvg, " Не к месту написали. Тут не "новая разработка", а коннект древнего приложения VB6, к тоже уже немолодому MSSQL2008, для которых этот клиент самый что ни на есть нативный, современный, и рекомендуемый ". Это не совсем так. Microsoft OLE DB для SQL Server (SQLOLEDB) – "самый что ни на есть нативный, современный, и рекомендуемый" для MS SQL 2000. Для MS SQL 2005 клиент SQLNCLI, версии 9. К сожалению он не доведен, поэтому продолжали использовать SQLOLEDB. Для SQL 2008 клиент SQLNCLI, версии 10, и есть "самый что ни на есть нативный, современный, и рекомендуемый", а в Microsoft OLE DB для SQL Server (SQLOLEDB) не включили поддержку новых типов данных, поскольку к этому времени он стал частью Windows, и он был объявлен устаревшим. Сегодня клиенты SQLNCLI, версии 10 и 11, пока работают в Win 10. Сегодня самый что ни на есть нативный, современный, и рекомендуемый клиент OLEDB – это "Драйвер Microsoft OLE DB для SQL Server (MSOLEDBSQL)", кстати в нем есть ключ, позволяющий установить режим совместимости с MS SQL 2000, хотя я его не проверял (не на чем). Конечно и программа, и MS SQL 2008 уже не молодые, но ОС то новейшая, в которой уже нет поддержки старых протоколов. В корпоративных сетях политики безопасности уже не дадут возможности использовать эти протоколы. Странно, всегда спрашивают версию MS SQL и рекомендуют сначала обновить его до текущей, но при этом используют устаревшие клиенты OLEDB. Кстати, вы упоминаете пайпы (NetPipes в интерпретации aleks222) – это протокол Named Pipes, который был объявлен не рекомендуемым ещё во времена Windows 2000. Поэтому написали к месту и если бы разработчики обратили на это внимание, то у ТС сегодня не было бы проблем. " сервер вообще ничего не знает о библиотеках доступа и OLE ". Да, но программа обращается к поставщику данных, а он уже должен обратиться к серверу "по уставу". Но вот беда "устав" изменился… ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2021, 09:42 |
|
Старое VB6 приложение не хочет авторизироваться в MS SQL 2008R2
|
|||
---|---|---|---|
#18+
Wlr-l Allan Stark, I. Установка для приложения уровня совместимости с предыдущими версиями ОС в этом случае мало что дает. Программа и так запускается. Если нужный протокол не включен в ОС, то эта операция его не включит. II. Если учетная запись, с которой вы вошли в Windows 10, это обычный пользователь, то попробуйте повысить ему права до опытного пользователя. Часто это помогает, особенно в рабочих группах. III. Я рекомендую такой способ проверки связи с SQL Server: 1. Создаете на рабочем столе файл текстовый файл и задаете ему имя a.udl (здесь важно не имя, а расширение файла - UDL). 2. Открываете его двойным щелчком мыши. Далее для русскоязычной ОС. Появится окно "Свойства канала передачи данных". 3. На вкладке "Поставщик данных" выбираете нужного поставщика. В данном случае "Microsoft OLE DB Provider for SQL Server". 4. На вкладке "Соединение": - в пункте 1 вводите имя или IP-адрес вашего SQL сервера (не забудьте, что бывают именованные экземgляры) - в пункте 2 выбираете "встроенную безопасность Windows NT" (надеюсь такой пользователь у вас в SQL Serverе есть) - щелкаете на кнопке "Проверить соединение" Если получили ответ "Проверка соединения выполнена", то рельсы к с SQL Serverу есть и по ним ходят трамваи. В противном случае или рельсы разобрали или трамвай из депо не выпустили, поэтому что-то делать с программой бесполезно. 5. Если пункт 4 успешно прошли, то поэкспериментируйте с именем и паролем пользователя. 6. Если пункты 4 и 5 успешно пройдены, то можно разбираться с программой. 7. Можно поэкспериментировать с другими поставщиками. Попробовал предложенный вариант с udl файлом. С провайдером "Microsoft OLE DB Provider for MS SQL Server" все получилось. С провайдером "Microsoft OLE DB Driver for MS SQL Server" возникла ошибка 1:1 как и при попытке авторизации из программы. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2021, 18:07 |
|
|
start [/forum/topic.php?fid=46&msg=40086528&tid=1684466]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
58ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
33ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 143ms |
0 / 0 |