Блог программиста
16 добавил: 3/24/2012 12:04:25 PM отредактировал: 3/24/2012 4:18:35 PM

Портативная дистрибуция .Net приложения с подключением к Oracle

Как известно, Microsoft прекратил поддержку своего драйвера ADO.NET для баз данных Oracle
( System.Data.OracleClient ), поэтому желательно использовать сторонние разработки
( а может быть и не желательно, а безальтернативно ).
Oracle предоставляет свои собственные драйвер для работы со своими базами из .Net -
ODP.NET ( Oracle Data Provider ). Однако размер ODP.Net довольно внушительный.
И при дистрибуции на каждую клиентскую машину устанавливать гору мегабайт не всегда сподручно.
Особенно, учитывая, что необходим и Oracle Client, который тоже не маленький.
Клиент какой-либо версии может быть уже установлен для определенного приложения, и установка второго,
а то и третьего клиента другой версии, немного все запутает.

Но есть способ сделать портативную версию приложения со вложенными в нее библиотеками
клиента и драйвера.
Из ODP.NET достаем 2 файлика ( они будут заархивированны в jar файлах ):
OraOps11w.dll
Oracle.DataAccess.dll


На всякий случай берем еще и ociw32.dll и oraocci11.dll

Из Instant Client-а копируем 3 файлика:
oci.dll
orannzsbb11.dll

oraociei11.dll либо, если у вас lite версия oraociicus11.dll ( но лучше брать файл из полной версии )

Все эти файлы помещаем в папку с программой.
Далее я просто копировал файл tsnnames.ora в папку с программой, но есть вариант
использующий строку подключения не требующую tsnnames.ora :

(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(Host=ИМЯ_ХОСТА_БАЗЫ)(Port=1521))(CONNECT_DATA=(SERVICE_NAME=SID_ВАШЕЙ_БАЗЫ)))

Если на том же ПК у вас имеется другая инсталляция клиента оракла, то желательно добавить путь к файлам
в конфигурационном .config файле:

 

<configuration>

<oracle.dataaccess.client>
<settings>
<add name="DllPath" value="E:\MyProgramm"></add>
<add name="FetchSize" value="65536"></add>
<add name="PromotableTransaction" value="promotable"></add>
<add name="StatementCacheSize" value="10"></add>
<add name="TraceFileName" value="c:\temp\odpnet2.log"></add>
<add name="TraceLevel" value="0"></add>
<add name="TraceOption" value="0"></add>
</settings>
</oracle.dataaccess.client>
</configuration>

А как вас зовут?

Добавить комментарий

Показать комментарии ( 1 )

Haroka Taking the ovvreeiw, this post hits the spot

17 добавил: 3/24/2012 6:35:02 PM отредактировал: 3/24/2012 6:55:10 PM

Как создать портативный вариант программы использующей Report Viewer

Сперва необходимо скачать Microsoft Report Viewer Redistributable
Распаковать exe файл как архив. Среди распакованных файлов найти vb_ros.cab
Распаковать в свою очередь и его.
Файлы переименовать таким образом:

FL_Microsoft_ReportViewer_Common_dll_117718_117718_x86_ln.3643236F_FC70_11D3_A536_0090278A1BB8
переименовать в
Microsoft.ReportViewer.Common.dll

FL_Microsoft_ReportViewer_Processingobject_125592_125592_x86_ln.3643236F_FC70_11D3_A536_0090278A1BB8
переименовать в
Microsoft.ReportViewer.ProcessingobjectModel.dll

FL_Microsoft_ReportViewer_WebForms_dll_117720_117720_x86_ln.3643236F_FC70_11D3_A536_0090278A1BB8
переименовать в
Microsoft.ReportViewer.WebForms.dll

FL_Microsoft_ReportViewer_WinForms_dll_117722_117722_x86_ln.3643236F_FC70_11D3_A536_0090278A1BB8
переименовать в
Microsoft.ReportViewer.WinForms.dll

Файлы копируем в проект и добавляем на них ссылочки.
А как вас зовут?

Добавить комментарий

18 добавил: 4/23/2012 10:55:02 AM отредактировал: 10/21/2013 11:11:26 AM

Как создать портативный вариант программы использующей Report Viewer

Сперва необходимо скачать Microsoft Report Viewer Redistributable
Распаковать exe файл как архив. Среди распакованных файлов найти vb_ros.cab
Распаковать в свою очередь и его.
Файлы переименовать таким образом:

FL_Microsoft_ReportViewer_Common_dll_117718_117718_x86_ln.3643236F_FC70_11D3_A536_0090278A1BB8
переименовать в
Microsoft.ReportViewer.Common.dll

FL_Microsoft_ReportViewer_Processingobject_125592_125592_x86_ln.3643236F_FC70_11D3_A536_0090278A1BB8
переименовать в
Microsoft.ReportViewer.ProcessingobjectModel.dll

FL_Microsoft_ReportViewer_WebForms_dll_117720_117720_x86_ln.3643236F_FC70_11D3_A536_0090278A1BB8
переименовать в
Microsoft.ReportViewer.WebForms.dll

FL_Microsoft_ReportViewer_WinForms_dll_117722_117722_x86_ln.3643236F_FC70_11D3_A536_0090278A1BB8
переименовать в
Microsoft.ReportViewer.WinForms.dll

Файлы копируем в проект и добавляем на них ссылочки.
А как вас зовут?

Добавить комментарий

19 добавил: 5/12/2012 2:58:27 PM отредактировал: 10/21/2013 11:12:31 AM

Напоролся на то, что стандартная замена шрифтов текста в HTML с помощью CSS сниппета не работает и в Opera и в FireFox.

[code]@font-face { font-family: "Arbat"; src: url('arbat.eot'); /* IE9 */
 src: url('arbat.eot?#iefix') format(''embedded-opentype'), /* IE6-IE8 */
url('arbat.woff') format('woff'), /* Современные */
 url('arbat.ttf') format('truetype'); /* Safari, Android и т.п. */ }
 b{ font-family: "Arbat"; }[/code]

Дело оказалось в том, что IIS неверно читал типы файлов. для исправления добавил в web.config между <system.webServer>

[code]<staticContent>
<mimeMap fileExtension=".otf" mimeType="font/otf" />
<mimeMap fileExtension=".woff" mimeType="font/x-woff" />
</staticContent>[/code]

Похоже исправляетс я и в Apache в файле .htaccess
А как вас зовут?

Добавить комментарий

20 добавил: 5/14/2012 3:35:30 PM

Click Once дистрибуция приложения без использования VS
Постоянно забываю, вот и решил добавить ссылки себе в блог.
Иногда возникают такие ситуации, что при создании дистрибутива VS сама повторно компилирует exe файл. Точнее сказать она всегда компилирует перед тем как создать дистрибутив, а иногда это не нужно. Что же делать, есть ли выход?
Можно создать дистрибутив вручную с помощью Mage.exe или MageUI.exe
http://msdn.microsoft.com/en-us/library/xc3tc5xx.aspx 

А как вас зовут?

Добавить комментарий

«  1 2 3 4 5 6 7  ...  » 

На сайт AlexAlex.ru