|
try
{
ADOQuery->Open();
}
catch(const EOleException &E)
{
ShowMessage(E.Message);
}
catch (const Exception &E)
{
ShowMessage(E.Message);
}
위에 처럼 하면 해당 예외사항이 발생하면 에러 메세지가 뜰겁니다.
위에는 Ole의 예외사항, 아래는 포괄적인 예외 사항으로 알고 있습니다.
이밖에도
데이타베이스 예외사항은
catch(EDatabaseError &E)
{
ShowMessage(E.Message);
}
데이타베이스 엔진의 예외사항은
catch(EDBEngineError &E)
{
ShowMessage(E.Message);
}
이외에도 많이 있습니다.
제 경험으로는 맨위의것 쓰면 웬만하거 다 나옵니다.
DoyongID 님이 쓰신 글 :
: 일단 MDAC 2.8을 설치했는데, 증상은 그대로고요... 한글버젼입니다..
:
: 그런데, 코드가드를 적용안하면 에러가 안뜨거든요..
:
: 그리고, Open에 try catch를 적용하면 에러메세지가 뜬다는게 어떤 개념인지 잘 모르겠습니다..
:
: try
: {
: ADOQuery->Open();
: }
: catch(...)
: {
: // 여기서 어떤 구문을 넣는건가요??
: }
:
:
: 이즈 님이 쓰신 글 :
: : 일단은 Open시 try catch 문으로 예외처리를 하나 넣어주시구요
: :
: : 에러메시지를 출력해보세요..
: :
: :
: : 그리고 혹시 영문버전 윈도우인가요?
: :
: : MDAC 2.8 최신버전을 설치하시구요
: :
: : 영문버전이라면 제어판의 언어및 지역옵션에 가셔서 랭귀지탭의 'Install files for East Asian Languages' 를
: :
: : 설치해보세요..
: :
: : 저도 ADO사용후 제 PC에서는 문제가 없는데 다른데에서 문제가 발생해서 찾아보니
: :
: : MDAC 문제도 아니고 황당하게도 저문제였습니다.
: :
: : 제 시스템은 XP PRO SP1, BC++ 6.0 ENT with Update 4, VC++ 6.0 with Service pack 5
: :
: : 검색을통해 간신히 해결방법을 찾았는데.. 그거 아니었으면.. 얼마나 고생했을지 모릅니다..
: :
: : 부디 좋은결과 있으시길~
|