Тема: Не работает библиотека на одной машине

Макрос вываливается с сообщением:
"Не удается найти указанный поставщик. Вероятно, он установлен неправильно
TCS_SQL_DLL.MainProcFunTCS"

Порядок установки всех библиотек общий для всех ПК. На других ПК
этот макрос выполняется без проблем. Библиотеку регистрировал
вручную. Не могу понять причину этой ошибки. Как видно из листинга
Doc1.docx проверку создания объекта проходит нормально. Запускали
другой макрос, который использует эту библиотеку, но другой модуль.
Вываливается с таким же сообщением. Что делать?

Post's attachments

Doc1.docx 54.25 Кб, 3 скачиваний с 2014-08-18 

You don't have the permssions to download the attachments of this post.

Re: Не работает библиотека на одной машине

TCS_SQL_DLL - у нас в дистрибутиве такой библиотек нет.

Re: Не работает библиотека на одной машине

TCS_SQL_DLL - у нас в дистрибутиве такой библиотек нет.

Это наша разработка. Дело в том, что она эксплуатируется уже
несколько лет без проблем. Т.е. она работает на других ПК
нормально.

Re: Не работает библиотека на одной машине

Тогда сказать сложно. Возможно зависимостей каких-то нету.

Re: Не работает библиотека на одной машине

Тогда сказать сложно.

Понимаю. Поэтому и обратился к Вам.
В дополнении:Win 7 64 p. Версия TCS не имеет значения, но
6.3(19098)
Попробовал зарегистрировать библиотеку в system32, но пишет,
что не может найти файл. Скопировать, удалить, создать в этой
папке можно. История этой ПК такова:сначало не устанавливалась
MS SQL Native Client. Переустановили ОС. Нынешняя ситуация
описана выше. На предложение ещё раз переустановить поль-
зователь говорит: да сколько раз можно? Другого выхода пока не
вижу.

Re: Не работает библиотека на одной машине

Сама ошибка выглядит так:

Не удаётся найти указанного поставщика. Вероятно, он установлен неправильно

После поиска в инете понял, что речь идёт о провайдере JET 4,
который не стоит на данном ПК. Говорят, что он входит в инстал-
лятор Office 2007. Буду переустанавливать Office 2007.

Re: Не работает библиотека на одной машине

Боюсь что начиная с XP он уже встроен в систему и переставить его проблематично, только если новее версия будет. Ну программу разбирать надо, что там за ошибки происходят не известно, это только то что вам показали, и причина может быть и в другом.

Re: Не работает библиотека на одной машине

начиная с XP он уже встроен в систему

В курсе.
Переустановка оффиса не помогла. Перепробовал более 5 способов,
предложенных из инета.

программу разбирать надо, что там за ошибки происходят не известно

А какя разница? На других ПК, с такой же конфигурацией работает.

Найду исходник библиотеки и отпишусь.

Re: Не работает библиотека на одной машине

что там за ошибки происходят не известно, это только то что вам показали, и причина может быть и в другом.

Ошибка происходит именно при вызове модуля. Я поставил перед
ним

Call TCSApp.ShowErrorMessage("1. Будет ошибка tcs_sql_dll.dll")
Call MainLib.GreateDok(TCSApp, TCSActiveModule , DB, ArchTree, ArchTreeID) 

Re: Не работает библиотека на одной машине

ну нужно сам этот модуль ковырять, а не его вызов.  Я же не знаю что он там делает.

(изменено: JAEAEJ, 21 августа 2014 14:43:40)

Re: Не работает библиотека на одной машине

Сам модуль:

procedure TMainProciFunTCS.GreateDok(TCSApp1, Module1, DB,
  Tree: OleVariant; TreeID: Integer);
var
Doc : Olevariant;
i: integer;
s: String;
begin
 DM:=TDM.Create(nil);
 DM.ADOConnection1.Connected:=False;
// DM.ADOConnection1.Params.Values['SERVER NAME'] :=DB;
 DM.ADOConnection1.Connected:=True;
 If  not DM.ADOConnection1.Connected then begin
    ShowMessage('Îøèáêà ïîäêëþ÷åíèÿ ê áàçå!');
 END else begin
  FCreateDoc:=TFCreateDoc.Create(nil);
  FCreateDoc.Module:=Module1;
  FCreateDoc.TCSApp:=TCSApp1;
  FCreateDoc.ArchTree:=Tree;
  FCreateDoc.ArchTreeID:=TreeId;
  FCreateDoc.ShowModal;
  FCreateDoc:=nil;
 end;
  DM.Free;
  DM:=Nil;
end;

Строка подключения:

Provider=SQLNCLI.1;Password=...;Persist Security Info=True;User ID=2;Initial Catalog=pt;Data Source=10.10.10.107\pt

Проверил. Подключение выполняется нормально.

Re: Не работает библиотека на одной машине

SQL Native Client x32 поставьте. Скорей всего стоит только x64 (они вроде  разные).

Re: Не работает библиотека на одной машине

Олег Зырянов пишет:

SQL Native Client x32 поставьте. Скорей всего стоит только x64 (они вроде  разные).

Не ставится.

Post's attachments

Doc2.doc 91 Кб, 2 скачиваний с 2014-08-21 

You don't have the permssions to download the attachments of this post.

Re: Не работает библиотека на одной машине

ну попробуйте x64 тогда поставить. Видимо наврал с с постом выше.

(изменено: JAEAEJ, 22 августа 2014 09:41:33)

Re: Не работает библиотека на одной машине

ну попробуйте x64 тогда поставить.

Установил. Результат тот же.
Посмотрите doc. У меня есть SQL Native Client, а у него нет. Кто его ставит?

Post's attachments

? ????.doc 83 Кб, 8 скачиваний с 2014-08-22 

You don't have the permssions to download the attachments of this post.

Re: Не работает библиотека на одной машине

Заменил строку соединения на SQLOLEDB.1. Теперь всё отрабатывает правильно.
Можно считать тему закрытой.