2013-03-11 3 views
2

Я создаю службу Windows. Эта служба должна читать данные из базы данных Advantage один раз в день.Advantage Error 6082

Я скопировал базу данных Advantage на моем компьютере, и она работает нормально, но когда я пытаюсь службу на сервере у меня есть следующая ошибка:

«AdsException: Ошибка 6082: Ошибка при загрузке Преимущество Локальная библиотека сервера «.

Согласно документу (link) я должен поставить ADSLOC32.DLL в каталоге \ WINDOWS \ SYSTEM.

Прошу, но это не сработает.

Любые идеи?

EDIT: Я создал консольное приложение, которое выполняет точно такой же код, что и моя служба Windows, и работает точно так, как должно. Похоже, что проблема связана с моей службой, но я не знаю, какая часть моей службы ошибочна ...

EDIT 2: Я проверил монитор процесса, и моя служба не пытается загрузить adsloc32. dll, он пытается загрузить adsloc64.dll. Я не нашел файл adsloc64.dll, поэтому я делаю копию adsloc32.dll в каталоге приложения и называю его adsloc64.dll, но он не работает.

+0

Вы должны всегда использовать System32 (32-разрядную систему) или SysWOW64 (в 64-разрядной системе) для 32-разрядных DLL вместо System (которая является старой 16-разрядной версией каталога Windows). В этой связи документация неверна. http://msdn.microsoft.com/en-us/library/7d83bc18(v=vs.80).aspx –

+0

Ну, Windows все еще ищет 16-битный каталог, но только для обратной совместимости. См. Эту ссылку: http://msdn.microsoft.com/en-us/library/windows/desktop/ms682586%28v=vs.85%29.aspx –

+0

В файле System32 и в System32 уже есть файл adsloc32.dll. SysWow64. Я пытаюсь поместить этот файл в свой каталог приложений, но он все равно не работает. –

ответ

2

Я нашел решение.

Я использовал Process Monitor от Windows Sysinternals, чтобы узнать, откуда программа пытается загрузить DLL-файлы. И он не пытался загрузить adsloc32.dll, загружался adsloc64.dll.

Я просто поместил файл adsloc64.dll в свой каталог приложений, и теперь он работает.

2

Попробуйте поместить файл adsloc32.dll в ту же директорию, что и ваше приложение. Возможно, есть некоторые проблемы с правами

+0

Я пробовал ваше решение, но оно не работает. –

Смежные вопросы