Я написал программу на vb.net для домашнего использования, которая подключается к базе данных Progress OpenEdge. Теперь у меня действительно странная проблема во время выполнения.
У меня есть файл .exe, который запускается на моем локальном диске C:, диске C: серверов, из определенного сетевого местоположения (но не из других мест в сети) просто отлично, по крайней мере, для двух обычных пользователей. Проблема в том, что когда я отправляю его на проверку своему ИТ-менеджеру, она возвращает его и говорит, что он даже не запустится; при просмотре ошибки кажется, что при самом первом запросе выбора (что происходит до завершения загрузки формы) происходит сбой. В частности, в конечном итоге это сводится к ошибке ниже:
System.Data.Odbc.OdbcException: ERROR [HY000] [DataDirect][ODBC Progress OpenEdge Wire Protocol driver]Number contains an invalid character: ?
ОШИБКА [HY000] [DataDirect][драйвер ODBC Progress OpenEdge Wire Protocol]Номер содержит недопустимый символ: ?
сейчас, конечно, использую источники данных в Visual Studio и параметризованные запросы. Итак, да, если он пытается запустить его как прямой SQL и не заполняет параметры должным образом, тогда есть вопросительный знак в числовом поле. Мой вопрос: почему один и тот же .exe в том же месте, запущенный пользователем с ВЫСШИМи привилегиями, выдает ошибки?
Driver32=C:\Progress\OpenEdge\bin\pgoe1023.dll
. Ни одна из других строк, но когда я тестирую соединение, все идет нормально, и при просмотре системного DSN я вижу указанный порт. Я не уверен, почему у администратора будут разные результаты по сравнению с обычным пользователем. - person PsychoData   schedule 02.05.2014