DetailPage-MSS-KB

기술 자료

기술 자료: 118609 - 마지막 검토: 2006년 11월 21일 화요일 - 수정: 3.2

 

요약

참고 .MDB 파일 프로그래밍 방식으로 만드는 방법에 대한 자세한 내용은 Visual C++ 버전 4.x 사용하거나 나중에 Microsoft 기술 자료의 다음 문서를 참조하십시오.:
126606  (http://support.microsoft.com/kb/126606/EN-US/ ) CREATE_DB, REPAIR_DB, COMPACT_DB 정보: 액세스
.mdb 파일은 항상 개방형 데이터베이스 연결 (ODBC) 관리자 또는 데이터 원본을 프로그래밍 방식으로 구성하는 Access 데이터 원본을 구성하는 데 사용됩니다. MFC 데이터베이스 클래스 또는 ODBC 응용 프로그래밍 인터페이스 (API)를 사용하여 .mdb 파일을 만들 수 없습니다.

다음 방법 중 하나를 컴퓨터에 데이터 소스 구성 응용 프로그램이 있을 수 있습니다.

  • 제공되는 및 응용 프로그램 함께 .mdb 파일을 설치하십시오.
  • .mdb 파일에 사용자 정의 리소스를 확인하십시오. 그런 다음 런타임에 .mdb 파일을 복사하십시오.
이 문서에서는 사용자 정의 자원에 .mdb 파일을 만드는 두 번째 방법을 설명합니다.

추가 정보

사용자 정의 자원 기타 데이터 .EXE 파일을 첨부할 수 있습니다. 리소스로 .mdb 파일을 변경한 경우 리소스가 런타임에 로드할 및 .mdb 파일을 쓸 수 있습니다. 이 작업을 수행하는 데 필요한 단계는 다음과 같습니다.

  1. .mdb 파일을 Access 또는 MSQuery를 만듭니다.
  2. .RC 파일에 다음 줄을 추가하여 사용자 정의 리소스로 .mdb 파일 만들기:
          mdb_file  MDB_RESOURCE filename.mdb
    						
    위치를:
          mdb_file      is  a name for identifying the resource.
          MDB_RESOURCE  is  a name for identifying the type of the resource
                            and can be any user-defined type.
          filename.mdb  is  the name of the .mdb file.
    						
  3. 리소스를 로드하고 .mdb 파일을 쓰는. 사용자가 다음 함수를 에서 아무 곳이나 응용 프로그램에서 .mdb 파일을 만들 수 있습니다. .mdb 파일을 만들기 위한 일반적인 장소 CWinApp::InitInstance() 함수 재정의하면 됩니다.
       CreateMDBFile()
       {
          // Get the instance handle - required for loading the resource
          HINSTANCE hInst = AfxGetInstanceHandle();
    
          // Load the user-defined resource.
          HRSRC hmdbFile = ::FindResource(hInst, "mdb_file", "MDB_RESOURCE");
             HGLOBAL hRes = ::LoadResource(hInst, hmdbFile);
             DWORD dwResSize = ::SizeofResource(hInst, hmdbFile);
    
             if (hRes != NULL)
             {
                UINT FAR* lpnRes = (UINT FAR*)::LockResource(hRes);
                CString szFileName = "Filename.mdb";
    
                TRY
                {
                   // Create the .mdb file
                   CFile f( szFileName, CFile::modeCreate | CFile::modeWrite );
    
                   // Write the user-defined resource to the .mdb file
                   f.WriteHuge(lpnRes, dwResSize);
                   f.Flush();
                }
                CATCH( CFileException, e )
                {
          #ifdef _DEBUG
                 afxDump << "File could not be opened " << e->m_cause << "\n";
          #endif
                }
                END_CATCH
    
          #ifndef WIN32 //Unlock Resource is obsolete in the Win32 API
                ::UnlockResource(hRes);
          #endif
                ::FreeResource(hRes);
             }
          }
    						
이 메서드는 한 가지 단점은 .mdb 파일의 크기 의하면 .exe 파일의 크기를 늘리는 것입니다. 심지어 빈 .mdb 파일 크기가 64 K 있기 때문에 .exe 최소한 64 K에 의해 증가합니다. .exe 크기를 줄일 수 있는 한 가지 방법은 .exe 압축된 .mdb 파일을 저장하고 실행 시 확장할 것입니다 리소스를 저장할 때 시간.

참조

사용자 정의 리소스에 대한 자세한 내용은 Windows SDK 도움말을 참조하십시오.

데이터 원본을 프로그래밍 방식으로 구성하는 방법에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
110507  (http://support.microsoft.com/kb/110507/EN-US/ ) ODBC 데이터 소스에 빠른 구성하는 방법

110508  (http://support.microsoft.com/kb/110508/EN-US/ ) 테이블 기반 데이터베이스 클래스 사용 만드는 방법

본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft Foundation Class Library 4.2 을(를) 다음과 함께 사용했을 때
    • Microsoft Visual C++ 1.5 Professional Edition
    • Microsoft Visual C++ 1.51
    • Microsoft Visual C++ 1.52 Professional Edition
    • Microsoft Visual C++ 2.0 Professional Edition
    • Microsoft Visual C++ 2.1
키워드: 
kbmt kbdatabase kbhowto kbprogramming KB118609 KbMtko
기계 번역된 문서기계 번역된 문서
중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.
폐기된 기술 자료 문서더 이상 지원되지 않는 제품의 KB 내용에 대한 고지 사항
이 문서에서는 Microsoft에서 더 이상 지원하지 않는 제품에 대해 설명합니다. 따라서 이 문서는 "있는 그대로" 제공되며 업데이트되지 않습니다.
공유
추가 지원 옵션
Microsoft Community 지원 포럼
직접 문의하기
Microsoft Certified Partner 찾기
Microsoft Store