WinXP에서 .NET 3.5 응용 프로그램과 함께 SQL Anywhere 5 데이터베이스에 연결하려고합니다. 그것은 독립 실행 형 콘솔 애플 리케이션에서 잘 작동합니다. 그러나 플러그인에서 정확한 코드를 실행하면 다음 코드로 별도의 AppDomain을 실행합니다 (두 코드 사이에서 유일한 차이점이 있음). 아래 오류가 발생합니다.SQL Anywhere 연결 오류 : 드라이버가 응용 프로그램에서 요청한 ODBC 동작 버전을 지원하지 않습니다.
BTW 둘 다 SAME 사용자로 실행됩니다.
using (OdbcConnection connection =
new OdbcConnection(strConnect))
{
OdbcCommand command = new OdbcCommand(query, connection);
command.CommandType = CommandType.Text;
DataTable posRecordsTable = new DataTable();
connection.Open();
OdbcException 예외는 다음과 같은 오류를 반환
인덱스 # 0 메시지 : [사이베이스] [ODBC 드라이버] 데이터베이스 서버에 연결할 수 없습니다 : 데이터베이스 엔진이
인덱스 # 1 를 실행하지 메시지 : [Sybase] [ODBC Driver] 연결 문자열 속성이 잘못되었습니다.
인덱스 # 2 메시지 : [Sybase] [ODBC Driver] 연결 문자열 속성이 잘못되었습니다
인덱스 # 3 메시지 : [Microsoft] [ODBC 드라이버 관리자] 드라이버가 응용 프로그램에서 요청한 ODBC 동작 버전을 지원하지 않습니다 (SQLSetEnvAttr 참조).
그래서 연결 문자열은 사용자/암호 등을 알아보기 힘들게 만듭니다. 힘들지만 어떤 비트가 보이지 않고 마음에 들지 않을 수도 있습니다. –
Tony, 문제는 똑같은 연결 문자열과 코드가 독립 실행 형 앱에서 잘 작동한다는 것입니다. = ((((((( –
항상 부랑자. http://msdn.microsoft.com/) ko-kr/library/windows/desktop/ms709285 (v = vs.85) .aspx, 플러그인 및 콘솔의 app 도메인 구성에 약간의 차이가 있음을 알 수 있습니다. 각 appdomain 설정을 덤프 할 가치가 있습니다. 파일 뭔가를 발견 할 수 있는지 확인하십시오. –