Microsoft MVP성태의 닷넷 이야기
[질문] odp.net 배포 관련 궁금한게 있어서 질문좀 드릴게요 [링크 복사], [링크+제목 복사],
조회: 21592
글쓴 사람
이대근 (my811007 at nate.com)
홈페이지
첨부 파일
 

C#으로 프로잭트 진행 막바지 배포 문제로 고민중에

이전에 작성해주셨던 "ODP.NET 설치 없이 .NET 클라이언트 프로그램 배포하는 방법"을 이용하여

배포에서 발생되던 문제가 해결 되는듯 했으나

해당 PC에 다른 버전에 오라클이 설치되어 있는 경우 오류가 발생 합니다 ㅠㅠ

이미 설치 되어 있는 오라클 PATH 로 인해 dll을 다르게 가져 오는 문제 인거 같은데

이럴 경우 프로그램 코드 상에서 해결 할수 있는 방법이 있을까요?








[최초 등록일: ]
[최종 수정일: 12/18/2012]


비밀번호

댓글 작성자
 



2012-12-20 01시19분
아래의 글을 읽어보세요.

환경 변수를 이용한 다중 ODAC 버전 테스트
; http://www.sysnet.pe.kr/2/0/828
정성태
2012-12-21 07시04분
[김은진] http://www.sysnet.pe.kr/2/0/828 에 있는 글 잘 읽어보았습니다.
저도 현재 글쓰신 분과 같은 상황인데요...
oracle 11g 버전에 있는 oracle.dataaccess.dll 파일을 사용하여 프로그램을 만들었고,
오라클을 설치하지 않은 사용자를 위해 필요 dll 들 (oci, oracle.dataaccess, oraops11w 등등)을 포함시켜 배포 시키는데요
만약 사용자의 PC에 Oracle Client 10g 가 설치되어 있으면, oracle.dataaccess.dll 버전 에러가 납니다.
(에러 메세지 - The provider is not compatible with the version of Oracle client)

이런 경우에 레지스트리를 생성해서 추가시키거나, 환경변수를 변경시켜주면 된다고 얼핏 들은 것 같기는 한데
무슨값을 어떻게 바꿔야 하는지 감이 잡히지 않던 차에 정성태님이 쓰신 글을 읽고
환경변수에 적용을 시켜봤습니다.
근데 제가 잘못따라한건지....여전히 같은 에러가 발생하더군요...

제가 배포하는 응용프로그램 폴더(안에 oracle dll 들이 포함되어 있음) 를 환경변수에 추가시키는게 맞나요?
PC에 설치된 Oracle Home 의 oracle.dataaccess.dll 파일과 제가 배포하는 응용프로그램 폴더에 있는 파일의 버전이 다른경우 어떻게 해야 하나요?
[guest]
2012-12-21 07시18분
환경 변수 PATH에 oracle 관련 dll을 찾을 수 있는 경로를 명시해야 합니다.
아마도 김은진님의 경우에는 이미 환경 변수 PATH에 기존 설치된 오라클의 DLL 들이 있는 것이 아닌가 예상되는데요. 확인해 보세요. Environment.GetEnvironmentVariable("PATH"); 코드로 반환되는 경로에 기 설치된 오라클 DLL 경로가 있는지?
정성태

[1]  2  3  4  5  6  7  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5968orion4/30/2025171winform DataSet.xsd의 암호화 된 ConnectionString 사용 질문 [1]
5966GM B4/30/2025186C#과 python 연동 질문 [1]
5962SunN...4/21/2025532Contextmenu margin 조절 [1]파일 다운로드2
5961GM B4/10/2025930winform => wpf 마이그레이션 방법 질문 [4]파일 다운로드1
5960Kim ...4/9/20251181안녕하세요.. 혹 AI & C# 에 대해서도 다루시나요? [1]
5959vict...2/10/20251881비주얼 스투디오 CLR 코드 탑색 질문입니다. [1]
5958Supe...1/18/20252857C#으로 DLL을 만들때 WebVeiw2을 이용하여 Vb6에서 사용할수 있는지 문의드립니다. [2]
5956fc1/11/20252858한국투자증권 KIS Developers OpenAPI의 C# 래퍼 버전 - eFriendOpenAPI NuGet 패키지 [1]
5955tree...11/8/20244507C#12 책 179 페이지 문의 사항 [2]
5954SunN...10/10/20244974textbox에서 글자입력후 textBox1_KeyUp함수에서listBox1_SelectedIndexChanged 강제호출방법 [1]
5953Roya10/4/20244924c# com host dll을 c++에서 사용할 때, sdk 관련 runtime 을 설치 안하고 제공할수 있을까요?? [1]
5952우광현9/5/20246071서버용 소켓 포트 동적포트 적용시 클라이언트가 호출하는 방법? [2]
5951Kun ...8/21/20245682c++에서 복합데이터 Struct를 .NET Framework에서 구현할 수 있는 방법이 있을까요? [2]
5950SunN...8/18/20246237정석대로 한다면 response.Close() 해야되는지요? [4]
5949SunN...8/16/20246326SqlConnection Open()에서 에러가나면 Close()하는 시점 [3]
5948SunN...8/14/20246206WebRequestMethods.Ftp.MakeDirectory 해제 [3]
5947Roya8/7/20246986c# dll을 cpp lib에서 사용을 할려고 하는데요. CoCreateInstance 에서 지정된 파일을 찾을수 없다고 나오는대요. [4]
5946SunN...8/5/20247090TaskDefinition 에서 사용저가로그온상관없이실행 [3]파일 다운로드1
5945SunN...8/3/20246956윈도우 작업스케줄러 [1]
5944roya8/1/20246902C# dll을 C++ 프로젝트에서 사용을 하고 싶은데, 레지스트리 등록 없이 가능한걸까요?? [2]
5943SunN...8/1/20246761윈도우C#에서 리눅스FTP로 업로드 및 리눅스에 폴더생성(WindowsOS에서C#으로) [3]
5942vict...7/24/20246810dll 을 c#에서 쓰고 싶습니다 [1]
5941vict...7/17/20248287DependencyObject와 같은 스레드에서 DependencySource를 만들어야 합니다. 오류 [2]
5940ckm7/16/20248705선생님 안녕하세요 async await 교착 관련 질문입니다 [1]
5939괴물신인7/9/20248411템플릿 대체할수있는방법이 있을까요? [6]
[1]  2  3  4  5  6  7  8  9  10  11  12  13  14  15  ...