열려 있는
닫다

모듈을 등록할 수 없습니다. Windows *.dll 및 *.ocx 확장자를 가진 파일을 등록합니다. 동적 라이브러리를 등록하는 여러 가지 방법

2. 라이브러리를 복사한 후 WIN+R 조합을 누르고 열리는 창에 붙여넣습니다.

regsvr32<имя библиотеки>

예를 들어 regsvr32 mfc100

그리고 Enter를 누르세요

이 오류가 나타나면

그런 다음 동일한 키 조합을 누르고 다음을 삽입해 보십시오.

%WINDIR%\SysWOW64\regsvr32<имя библиотеки>

예를 들어 %WINDIR%\SysWOW64\regsvr32 mfc100

라이브러리가 올바르면 등록이 성공하고 다음 메시지가 표시됩니다.

추신 시스템 디렉토리가 아닌 다른 디렉토리에 있는 라이브러리를 등록해야 하는 경우 라이브러리의 전체 경로를 지정해야 합니다.

예를 들어 regsvr32


1. 다운로드한 라이브러리를 원하는 시스템 디렉터리에 복사합니다. (이것은 system32 또는 SysWOW64입니다)*

* 라이브러리를 복사할 디렉터리는 응용 프로그램의 비트 깊이에 따라 다릅니다. 어느 폴더에 복사할지 정확히 모르겠으면 J 두 폴더 모두에 복사하세요.

2. 다운로드 게시물 하단에 보관, 압축을 풀고 reg.bat 파일을 실행하세요. 관리자 권한으로, 필요한 비트 심도를 선택하고 Enter를 누른 다음 라이브러리 이름 삽입, 시스템 디렉터리에 복사했습니다. 모든 것이 잘 진행되면 이 메시지가 표시됩니다.

그런 메시지를 본다면

그런 다음 다른 비트 크기를 선택하고 다시 등록해 보십시오. 모든 것이 잘 진행되어야 합니다.

추신 다른 디렉토리(시스템 디렉토리가 아님)에 있는 라이브러리를 등록해야 하는 경우 라이브러리 이름에 라이브러리의 전체 경로를 지정해야 합니다.

예를 들어 C:\Program Files\1Cv77\BIN\V7PLUS.dll

다중 구성 요소 객체 모델( 상대 영형대상 오델 - COM)는 라이브러리, 애플리케이션, 시스템 소프트웨어 등 모든 유형의 프로그램 간의 주요 상호 작용 수단입니다. 소프트웨어의 한 부분(서버)이 다른 부분(클라이언트)에게 서비스를 제공하는 표준 메커니즘을 정의합니다. 이는 소프트웨어 사이(클라이언트와 서버 사이)의 특정 통신 프로토콜을 사용하여 보장됩니다. 서버는 응용 프로그램이 실행되는 동안 로드되는 DLL(동적 연결 라이브러리)이거나 응용 프로그램이나 시스템 프로그램의 구성 요소가 될 수 있는 별도의 독립 프로세스이거나 다른 컴퓨터에서 실행되는 프로세스일 수도 있습니다. 클라이언트가 필요로 하는 서버를 찾기 위해 Windows 레지스트리의 특수 정보가 사용됩니다. 등록대부분 동적으로 로드되는 DLL 라이브러리 모듈 형태입니다. 프로그램은 DLL, OCX, ACX, EXE 파일 자체가 아니라 특정 프로그램 인터페이스 세트를 나타내는 개체와 함께 작동하므로 등록이 필요합니다. 다음 레지스트리 키는 DLL을 등록하는 데 사용됩니다.

HKLM\SOFTWARE\클래스\CLSID- 모든 시스템 사용자를 위해 COM 라이브러리 개체를 등록하는 경우

HKCU\SOFTWARE\Classes\CLSID- 현재 사용자에 대해서만 COM 라이브러리 개체를 등록하는 경우

HKLM\SOFTWARE\Wow6432Node\Classes\CLSID- 64비트 Windows OS에서 32비트 DLL을 등록하는 경우

등록 시 지정된 레지스트리 섹션에 전역 고유 식별자와 동일한 이름의 키가 생성됩니다. GUID등록된 개체입니다. COM과 관련된 GUID는 클래스 식별자입니다. 클래스 식별자를 다른 식별자와 구별하기 위해 다음과 같은 레지스트리 하위 키를 사용합니다. CLSID. GUID는 중괄호로 묶인 128비트 16진수 값입니다.

(23170F69-40C1-278A- 1000-000100020000

레지스트리에 등록하면 실행 파일의 경로 및 이름, 해당 버전, 등록 시간, 개발자에 대한 정보 및 실행 파일의 특정 속성을 결정하는 기타 매개 변수에 대한 정보가 포함된 GUID에 해당하는 이름으로 하위 키가 생성됩니다. 등록된 개체입니다. 등록 데이터를 삭제하거나 손상시키면 등록된 시스템 구성 요소나 응용 프로그램이 작동하지 않게 되며 일반적으로 DLL 조회 오류 메시지와 문제가 있는 소프트웨어를 다시 설치하라는 메시지가 함께 표시됩니다. 다시 설치하는 대신 유틸리티를 사용하여 손상된 개체를 다시 등록하는 것이 가능합니다. regsvr32.exe모든 버전의 Windows 운영 체제 제품군에서 사용할 수 있습니다.

공익사업 regsvr32.exe Windows 레지스트리에 OLE 컨트롤, ActiveX 컨트롤 및 DLL을 등록 및 등록 취소하기 위한 표준 명령줄 프로그램입니다. 64비트 버전의 Windows에는 두 가지 버전의 파일이 있습니다. regsv32.exe:

카탈로그의 64비트 버전 %systemroot%\System32(보통 C:\Windows\System32)

카탈로그의 32비트 버전 %systemroot%\SysWoW64(보통 C:\Windows\SysWoW64)

유틸리티를 작동하려면 높은 권한이 필요하므로 관리자 권한("관리자 권한으로 실행")으로 명령 프롬프트 창을 열어야 합니다.

시작에 regsvr32.exe명령줄 매개변수가 없거나 잘못된 매개변수로 시작하면 힌트가 표시됩니다.

REGSVR32 명령줄 형식:

Regsvr32 ] DLL 파일

/유- - DllUnInstall을 호출하고 서버 등록을 취소합니다.

/나- DllInstall을 호출하여 선택적 command_string을 매개변수로 전달합니다.

/N- DllRegisterServer를 호출하지 않습니다. /I 스위치와 함께 사용할 수 있습니다.

/에스– "조용한" 모드; 메시지 상자가 표시되지 않습니다.

사용 예 regsvr32.exe:

regsvr32 /u "C:\Program Files\7-Zip\7-zip32.dll"- 지정된 DLL의 등록을 취소합니다. 취소가 성공하면 다음 메시지가 표시됩니다.

메시지 출력을 억제하려면 매개변수를 사용하십시오. /에스:

regsvr32 /u /s "C:\Program Files\7-Zip\7-zip.dll"

이 명령을 실행하면 Windows 탐색기 마우스 오른쪽 버튼 클릭 상황에 맞는 메뉴에서 7-Zip 아카이버 항목이 사라집니다. 이를 복원하려면 다음 명령을 사용하여 7-zip.dll을 등록해야 합니다.

regsvr32 "C:\Program Files\7-Zip\7-zip.dll"

64비트 버전의 OS에서는 등록된 개체의 비트 깊이를 잊어서는 안됩니다. 32비트 개체를 등록해야 하는 경우 유틸리티의 32비트 버전에 대한 경로를 명시적으로 지정해야 합니다. regsvr32:

%SystemRoot%\syswow64\regsvr32.exe

또는 환경 변수를 사용하지 않고 다음을 수행합니다.

C:\Windows\System32\regsvr32.exe

COM 개체 등록을 관리하기 위한 추가 소프트웨어 도구로서 Nirsoft의 무료 유틸리티를 사용하는 것이 매우 편리합니다. RegDLLView.exe. 이 프로그램은 시스템에 설치할 필요가 없으며 크기가 작으며 다음을 수행할 수 있습니다.

시스템에 등록된 모든 개체의 편리한 목록을 받습니다.

선택한 개체를 등록하거나 등록 취소합니다.

하나 이상의 DLL 등록 취소를 수행하려면 reg 파일을 만듭니다.

지정된 파일을 등록하거나 다시 등록하십시오.

또한 "Regedit에서 열기" 컨텍스트 메뉴 항목을 통해 등록된 개체의 실행 파일에 대한 디지털 서명을 확인하고 해당 속성을 보거나 변경할 수 있으며 선택한 GUID에 대한 정보가 표시된 레지스트리 편집기를 시작할 수도 있습니다. 마우스 오른쪽 버튼으로.

게임이나 무거운 응용 프로그램을 설치하려면 Windows 운영 체제에 필요한 DLL을 자동으로 설치하고 등록해야 합니다. DLL은 여러 응용 프로그램에서 여러 번 액세스할 수 있는 동적 라이브러리입니다. 게임이나 프로그램이 특정 DLL에 액세스하려고 할 때 오류가 발생하면 "dllregisterserver 진입점을 찾을 수 없습니다." 또는 "실행할 수 없습니다. .dll 파일이 없습니다."라는 메시지가 사용자에게 표시됩니다. Windows에서 필요한 DLL 파일을 독립적으로 등록하면 동적 라이브러리에 액세스할 때 문제를 나타내는 이러한 오류와 기타 오류를 해결할 수 있습니다.

DLL에 액세스할 때 오류가 발생하는 이유는 무엇입니까?

Windows가 업데이트되고 응용 프로그램이 설치되면 DLL이 운영 체제에 추가됩니다. 이를 바탕으로 DLL 파일이 없거나 문제가 있음을 나타내는 오류가 발생하는 다음과 같은 주요 이유를 확인할 수 있습니다.

  • DLL이 설치되지 않았습니다. 여기에는 두 가지 이유가 있을 수 있습니다. Windows가 현재 버전으로 업데이트되지 않았고 라이브러리가 최신 업데이트 중 하나와 함께 제공되거나 설치 중 게임/응용 프로그램이 어떤 이유로 새 DLL을 설치 및 등록하지 않았습니다.
    메모:대부분의 경우 필요한 모든 DLL이 응용 프로그램 설치 파일에 포함되어 있으며 개발자는 필요한 구성 요소가 컴퓨터에 이미 설치되어 있다고 기대하지 않습니다.
  • DLL 손상. 이 문제는 바이러스 소프트웨어나 부주의한 사용자 작업(예: 동적 라이브러리를 손상시키는 레지스트리 변경 등)으로 인해 DLL이 손상된 경우에 가장 자주 발생합니다.

대부분의 DLL은 DirectX와 함께 컴퓨터에 설치되므로 게임이나 응용 프로그램을 설치할 때 DirectX를 업데이트/설치하라는 메시지가 표시되는 경우 이를 거부할 필요가 없습니다. 실행하면 .dll 파일이 누락되었습니다.”

Windows에서 DLL을 등록하는 방법

어떤 이유로 Windows에 게임과 응용 프로그램을 실행하는 데 필요한 DLL이 없는 경우 사용자가 직접 등록할 수 있습니다. 먼저 필요한 DLL을 컴퓨터에 다운로드하는 두 가지 방법으로 이 작업을 수행할 수 있습니다.

명령줄을 사용하여 DLL 등록

명령줄을 통해 컴퓨터에 존재하는 DLL을 등록하려면 다음을 수행하십시오.


실행 라인을 사용하여 DLL 등록

"실행" 라인을 통해 DLL을 등록하는 것은 실제로 명령줄을 사용한 작업과 다르지 않습니다. 사용자에게는 다음이 필요합니다.


DLL을 등록할 수 없는 경우 수행할 작업

라이브러리 등록 명령에 응답할 때 Windows에서 모듈이 로드되었지만 DllRegisterserver 진입점을 찾을 수 없음을 나타내는 오류가 발생할 수 있습니다. DLL이 등록되지 못하게 하는 유사한 오류의 다른 변형이 있을 수 있습니다. 이러한 오류는 다음과 같은 이유로 발생합니다.

DLL을 등록하려고 할 때 오류가 발생하는 경우 첫 번째 단계는 공급업체에서 공식 구성 요소를 다운로드하여 더미 파일의 가능성을 제거하는 것입니다. 이렇게 하려면 검색 엔진을 사용하여 문제가 있는 DLL이 속한 시스템 구성 요소를 찾아야 합니다.

드문 경우지만 DLL이 구성 요소나 응용 프로그램의 .exe 파일과 동일한 폴더에 없으면 DLL 등록 문제가 발생할 수 있습니다. 이런 경우에는 실행 파일이 있는 폴더로 라이브러리를 이동한 후 다시 등록을 시도하셔야 합니다.

이 방법이 어떻게 작동하는지 확인해 보세요. DLL 파일을 등록하려면 "regsvr" 명령과 DLL 파일 이름(파일이 이 명령을 지원하는 경우)을 사용할 수 있습니다. 이렇게 하면 Windows 레지스트리에서 DLL 파일로의 경로가 생성되어 시스템이 파일을 더 쉽게 찾고 사용할 수 있습니다.

  • 일반적으로 이 방법은 타사 프로그램에 속하고 시스템 유틸리티(예: 명령줄)와 직접 상호 작용하는 DLL 파일을 등록하는 데 사용됩니다.

"진입점" 오류의 본질을 이해합니다. DLL 파일이 이미 등록되어 있거나 "regsvr" 명령을 지원하지 않거나 해당 코드에서 Windows 레지스트리에 연결할 수 없는 경우 "모듈이 로드되었지만 진입점 DllRegisterServer가 없습니다"라는 오류 메시지가 표시됩니다. 발견되었습니다." 로드되었지만 DllRegisterServer 진입점을 찾을 수 없음). 이 메시지가 화면에 나타나면 DLL 파일을 등록할 수 없습니다.

  • "진입점" 오류는 DLL 파일을 등록할 필요가 없다는 확인이므로 문제가 되지 않습니다.
  • 등록하려는 DLL 파일을 찾으세요.원하는 DLL 파일이 있는 폴더로 이동하여 찾으십시오.

    • DLL 파일이 설치된 프로그램용인 경우 프로그램 폴더(예: C:\Program Files\[프로그램 이름])를 엽니다.
  • DLL 파일의 속성을 엽니다. DLL 파일을 마우스 오른쪽 버튼으로 클릭하고 메뉴에서 속성을 선택합니다. 팝업 창이 열립니다.

    DLL 파일 이름을 찾으십시오.속성 창 상단에 있는 텍스트 상자에서 파일의 전체 이름을 확인할 수 있습니다.

    • 대부분의 DLL 파일에는 복잡한 이름이 있으므로 나중에 이름을 복사하려면 속성 창을 열어 두십시오.
  • DLL 파일의 경로를 복사합니다.마우스 왼쪽 버튼을 누른 채 위치 행에 나타나는 텍스트를 따라 드래그한 다음 Ctrl + C를 눌러 DLL 파일 경로를 복사합니다.

    명령줄을 찾으세요.시작 메뉴 검색창에 명령 프롬프트를 입력하세요. 시작 메뉴 상단에 명령 프롬프트 아이콘이 나타납니다.

    관리자 권한으로 명령 프롬프트를 엽니다.이를 위해:

  • DLL 파일이 있는 디렉터리로 이동합니다. cd 를 입력하고 스페이스바를 누른 다음 Ctrl + V를 눌러 DLL 파일 경로를 붙여넣은 다음 키를 누릅니다. ↵들어가다.

    • 예를 들어, DLL 파일이 "Windows" 폴더에 있는 "SysWOW64" 폴더에 있는 경우 명령은 다음과 같습니다: cd C:\Windows\SysWOW64
  • "regsvr" 명령과 DLL 파일 이름을 입력합니다. regsvr32 를 입력하고 스페이스바를 누른 다음 DLL 파일 이름(.dll 확장자와 함께)을 입력하고 다음을 누릅니다. ↵들어가다. DLL 파일을 등록할 수 있으면 등록 확인 메시지가 화면에 나타납니다.

    • 예를 들어, DLL 파일 이름이 "usbperf.dll"인 경우 명령은 다음과 같습니다: regsvr32 usbperf.dll
    • DLL 파일 이름을 복사하려면 DLL 파일이 포함된 폴더를 다시 열고(속성 창이 열림) 파일 이름을 강조 표시한 다음 Ctrl + C를 누릅니다. 그런 다음 이름을 명령줄에 붙여넣습니다. 이렇게 하려면 Ctrl + V를 누르세요.
    • DLL 파일이 이미 등록되어 있거나 등록할 수 없는 경우 등록 확인 대신 "진입점" 오류가 표시됩니다.
  • 사용자는 Windows 7 및 8에서 dll 파일을 등록하는 방법에 대해 묻습니다. 일반적으로 "필요한 dll이 컴퓨터에 없기 때문에 프로그램을 시작할 수 없습니다."와 같은 오류가 발생한 후입니다. 이것에 대해 이야기합시다.

    실제로 시스템에 라이브러리를 등록하는 것은 그렇게 어려운 작업이 아닙니다(한 가지 방법의 세 가지 변형을 보여 드리겠습니다). 실제로 한 단계만 필요합니다. 유일한 필수 요구 사항은 Windows 관리자 권한이 있다는 것입니다.

    그러나 약간의 뉘앙스가 있습니다. 예를 들어 성공적인 DLL 등록이 반드시 "라이브러리가 컴퓨터에 없습니다" 오류 및 모듈이 버전과 호환되지 않는다는 메시지와 함께 RegSvr32 오류가 나타나는 것을 방지하는 것은 아닙니다. 이 컴퓨터에서 Windows의 DLLRegisterServer 진입점을 찾을 수 없다고 해서 뭔가 잘못하고 있다는 의미는 아닙니다. 이것이 무엇을 의미하는지 설명은 기사 끝부분에서 설명하겠습니다.

    OS에 DLL을 등록하는 세 가지 방법

    추가 단계를 설명하면서 라이브러리를 복사해야 하는 위치를 찾았으며 DLL이 이미 System32 또는 SysWOW64 폴더에 있다고 가정합니다(필요한 경우 다른 위치에 있을 수도 있음).

    참고: 아래에서는 regsvr32.exe를 사용하여 DLL 라이브러리를 등록하는 방법을 설명합니다. 그러나 64비트 시스템을 사용하는 경우 2개의 regsvr32.exe가 있으며 하나는 C:\ 폴더에 있습니다. 윈도우\SysWOW64, 두 번째는 C:\Windows\System32입니다. 그리고 이들은 서로 다른 파일이며 64비트 파일은 System32 폴더에 있습니다. 예제에 표시된 대로 각 방법에서 파일 이름뿐만 아니라 regsvr32.exe의 전체 경로를 사용하는 것이 좋습니다.

    첫 번째 방법은 다른 방법보다 인터넷에서 더 자주 설명되며 다음으로 구성됩니다.

      Windows 키 + R을 누르거나 시작 메뉴로 이동합니다. 윈도우 7"실행"을 선택하십시오(물론 활성화되어 있는 경우). regsvr32.exe path_to_dll_file을 입력하십시오. 확인 또는 Enter를 누르십시오.

    그 후 모든 것이 순조롭게 진행되면 라이브러리가 성공적으로 등록되었다는 메시지가 표시됩니다. 그러나 높은 확률로 다른 메시지가 표시됩니다. 모듈이 로드되었지만 DllRegisterServer 진입점을 찾을 수 없으며 DLL이 올바른 파일인지 확인할 가치가 있습니다. 이미 말했듯이 이에 대해서는 나중에 쓸 것입니다. ).

    두 번째 방법은 관리자 권한으로 명령줄을 실행하고 이전 단락과 동일한 명령을 입력하는 것입니다.

      관리자 권한으로 명령 프롬프트를 실행합니다. Windows 8에서는 Win+X 키를 누른 다음 원하는 메뉴 항목을 선택할 수 있습니다. Windows 7에서는 시작 메뉴에서 명령줄을 찾아 마우스 오른쪽 버튼으로 클릭하고 "관리자 권한으로 실행"을 선택합니다. regsvr32.exe path_to_dll_library 명령을 입력합니다(스크린샷에서 예를 볼 수 있음).

    다시 말하지만, 시스템에 DLL을 등록하지 못할 가능성이 높습니다.

    그리고 어떤 경우에는 유용할 수도 있는 마지막 방법은 다음과 같습니다.

      등록하려는 DLL을 마우스 오른쪽 버튼으로 클릭하고 "다음으로 열기" 메뉴 항목을 선택합니다. "찾아보기"를 클릭하고 Windows/System32 또는 Windows/SysWow64 폴더에서 regsvr32.exe 파일을 찾아 이를 사용하여 DLL을 엽니다.

    시스템에 DLL을 등록하기 위해 설명된 모든 방법의 본질은 동일하며 동일한 명령을 실행하는 방법이 약간 다를 뿐 둘 중 더 편리한 방법이 있습니다. 이제 왜 아무것도 효과가 없는지 알아보십시오.

    DLL을 등록할 수 없는 이유는 무엇입니까?

    반응형2(너비:300px;높이:300px)@media(최소 너비: 500px)(.반응성2(너비:336px;높이:280px))

    따라서 일부 DLL 파일이 누락되었습니다. 이로 인해 게임을 시작하거나 오류가 표시될 때 인터넷에서 이 파일을 다운로드하고 등록을 시도했지만 DllRegisterServer 진입점이나 모듈이 현재 버전과 호환되지 않습니다. Windows 버전 또는 다른 것, 즉 DLL 등록이 불가능합니다.

      모든 DLL 파일이 등록되도록 설계된 것은 아닙니다. 이런 방식으로 등록하려면 동일한 DllRegisterServer 기능을 지원해야 합니다. 때로는 라이브러리가 이미 등록되어 있다는 사실 때문에 오류가 발생하는 경우도 있습니다. DLL 다운로드를 제공하는 일부 사이트에는 실제로 찾고 있는 이름의 더미 파일이 포함되어 있으며 실제로 라이브러리가 아니기 때문에 등록할 수 없습니다.

    이제 문제를 해결하는 방법:

      프로그래머이고 DLL을 등록하는 경우 regasm을 시도해 보세요. exe사용자이고 DLL이 누락되었다는 메시지와 함께 무언가가 시작되지 않는 경우 컴퓨터- 다운로드 위치가 아닌 인터넷에서 어떤 종류의 파일인지 살펴보세요. 일반적으로 이를 알면 공식 설치 프로그램을 다운로드하여 원본 라이브러리를 설치하고 시스템에 등록할 수 있습니다. 예를 들어 이름이 d3d로 시작하는 모든 파일의 경우 공식 웹 사이트에서 DirectX를 설치하면 충분합니다. msvc - Visual Studio 재배포 가능 버전 중 하나입니다. (토렌트 게임이 실행되지 않으면 바이러스 백신 보고서를 살펴보세요. 필요한 DLL이 삭제되었을 수 있습니다. 일반적으로 일부 수정된 라이브러리에서 이런 일이 발생합니다.) 이 라이브러리가 필요한 실행 파일과 동일한 폴더가 작동합니다.

    나는 이것으로 결론을 내립니다. 뭔가가 예전보다 더 명확해졌기를 바랍니다.