English version Russian version

Работа с Firebird и Interbase с ограниченными правами в системе

Доступ к Firebird и Interbase без установки дополнительных компонентов в операционной системе актуален для:
  • WEB-приложений на внешнем хостинге.
  • Portable-приложений в связке с Firebird Embedded.
  • Приложений, работающих с базой данных на компьютере с ограниченными правами пользователя.

Манифест - альтернатива регистрации компонента в реестре

Манифест(manifest) - это файл XML, описывающий клиентское приложение и библиотеки, необходимые для его работы.

Манифест может храниться как в ресурсах приложения, так и на диске, рядом с исполняемым модулем программы. Во втором случае для того, чтобы приложение обнаружило файл манифеста, он должен называться: ИМЯ_ПРОГРАММЫ.exe.manifest.

Возможность работы с манифестами доступна начиная с Windows XP.

Создание файлов манифеста для подключения к Firebird и Interbase

Чтобы клиентское приложение обнаружило незарегистрированный драйвер необходимо:
  • Создать файл манифеста клиентского приложения с именем ИМЯ_ПРОГРАММЫ.exe.manifest.
  • В нем указать ссылку на файл манифеста IBProvider без расширения .manifest.
  • Создать файл манифеста IBProvider (v1, v2 или v3).
  • В манифесте IBProvider указать соответствующие CLSID и ProgID из таблицы 1.
 Драйвер   Текущая версия   Имя файла драйвера   Имя файла манифеста   progID   clsID 
IBProvider v1 1.9.28.3295 _IBProvider.dll _IBProvider.dll.manifest LCPI.IBProvider.1 {1352C0F0-DED2-11D3-A7AC-00A0C907DB93}
_IBProvider_i.dll _IBProvider_i.dll.manifest
IBProvider v2 2.6.22.3295 _IBProvider_v2.dll _IBProvider_v2.dll.manifest LCPI.IBProvider.2 {3439B9D5-23B6-4661-9F0C-5CD74B1C66CB}
_IBProvider_v2_i.dll _IBProvider_v2_i.dll.manifest
IBProvider v3 3.0.0.10478 Final _IBProvider_v3_i.dll _IBProvider_x3_i.dll.manifest LCPI.IBProvider.3 {769A1280-04BF-11D8-AE8B-00A0C907DB93}
_IBProvider_x3_w64_i.dll _IBProvider_x3_w64_i.dll.manifest


Пример файла манифеста клиентского приложения под .Net Framework ИМЯ_ПРОГРАММЫ.exe.manifest, использущего IBProvider v3 (32bit):

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">

<assemblyIdentity name="ИМЯ_ПРОГРАММЫ_БЕЗ_РАСШИРЕНИЯ" version="1.0.0.0" processorArchitecture="msil"></assemblyIdentity>

	<dependency>
		<dependentAssembly>			
			<assemblyIdentity name="_IBProvider_x3_i.dll"  version="3.0.0.10478"></assemblyIdentity>
		</dependentAssembly>
	</dependency>

</assembly>


Пример файла манифеста _IBProvider_x3_i.dll.manifest:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" 		  
  manifestVersion="1.0">

  <file name = "_IBProvider_x3_i.dll">
   <comClass progid="LCPI.IBProvider.3 " clsid="{769A1280-04BF-11D8-AE8B-00A0C907DB93}" threadingModel = "Apartment" />
</file>

</assembly>

Дополнительные модули для работы провайдера IBProvider v3

Для работы IBProvider v3 требуется Microsoft Visual C++ 2005 SP1 Redistributable Package 32-х битной или 64-х битной версии, в зависимости от разрядности операционной системы.

Microsoft Visual C++ 2005 SP1 Redistributable Package содержит три файла:
  • msvcp80.dll
  • msvcr80.dll
  • Microsoft.VC80.CRT.manifest
Файлы можно взять из дистрибутива IBProvider Professional или скачать с сайта ibprovider.

Дополнительные модули для работы провайдеров IBProvider v2 и IBProvider v1

Для функционирования IBProvider v2 и IBProvider v1 на компьютер клиента необходимо скопировать библиотеку cc3250mt.dll. Её так же можно скачать с сайта ibprovider.

Можно ли работать c IBProvider без регистрации на Windows Vista?

Предоложенное решение не работает на Windows Vista. О том, как настройть свое приложение для работы с IBProvider без регистрации под Висту, рассказано на нашем форуме поддержки.

Полезные ссылки


Теги статьи: Firebird, Interbase, web, portable applications, firebird embedded, asp, .net, odbc driver, ole db provider, Firebird oledb provider, Firebird ODBC driver, Interbase ODBC driver, Interbase Delphi, Firebird Delphi
Забобрить эту страницу! Добавить на Memori.ru Mr Wong Добавить в закладки МоёМесто.ru Добавить на Rumarkz Добавить на Rucity Digg It Reddit Technorati Del.icio.us Google Bookmarks Slashdot StumbleUpon Yahoo MyWeb Все

Права на материал принадлежат: IBProvider. При перепечатке ссылка на сайт http://www.ibprovider.com обязательна. Версия для печати: Работа с Firebird и Interbase с ограниченными правами в системе



Назад Вперед