MSI 설치 프로그램에 대해 DLL을 실행할 수 없습니다


23

dll을 실행할 수 없습니다

Windows Installer에 문제가 있다고 생각합니다. 서비스를 다시 시작했지만 효과가 없습니다. .msi로 끝나는 것은 설치할 수 없습니다 . 때로는 그런 오류 메시지가 나타납니다.

여기에 이미지 설명을 입력하십시오

이벤트 뷰어 로그 :

파이썬 설치 프로그램 :

제품 : Python 2.7.3-오류 1723.이 Windows Installer 패키지에 문제가 있습니다. 이 설치를 완료하는 데 필요한 DLL을 실행할 수 없습니다. 지원 담당자 또는 패키지 공급 업체에 문의하십시오. 조치 CheckDir, 항목 : _CheckDir @ 4, 라이브러리 : C : \ Users \ x \ AppData \ Local \ Temp \ MSI570C.tmp

SSDLife 설치 프로그램 :

제품 : SSDlife Pro-오류 1723.이 Windows Installer 패키지에 문제가 있습니다. 이 설치를 완료하는 데 필요한 DLL을 실행할 수 없습니다. 지원 담당자 또는 패키지 공급 업체에 문의하십시오. 조치 WIX_TestVersion, 항목 : WIX_TestVersion, 라이브러리 : C : \ Users \ x \ AppData \ Local \ Temp \ MSIA32E.tmp

오류 1723에서 검색 : 오래된 버전의 Windows Installer가있는 경우이 오류가 발생할 수 있습니다.

Windows Installer에 대한 몇 가지 링크가 있지만 지원되는 운영 체제 목록에 Windows 7이 없습니다.

https://www.microsoft.com/en-us/download/details.aspx?id=25 및

https://www.microsoft.com/en-us/download/details.aspx?id=8483&WT.mc_id=MSCOM_EN_US_DLC_DETAILS_131Z4ENUS22007

Windows (7 x64)가 최신입니다.

이 Fixit도 시도하십시오 : http://support.microsoft.com/mats/Program_Install_and_Uninstall

그러나 문제를 찾지 못했습니다.


@Serge 예, avast, 지금 설치 프로그램을 비활성화하고 실행하려고 시도했지만 도움이되지 않는 것 같습니다.
— Kedar

임시 폴더를 정리하고 다시 시도하십시오.
— Moab

@Moab nope, 도움이되지 않습니다
— Kedar

문제가 발생한 OS를 지정하십시오.
— Alexey Ivanov

@Moab 그들 모두
— Kedar

답변:


26

나도이 문제에 부딪쳤다. Alexey Ivanov의 답변은 그다지 도움이되지 않았지만, 조사해 보라고 영감을주었습니다 C:\Users\x\AppData\Local\Temp.

평소와 같이 오류 메시지는 절반 만 유용했습니다. 필자의 경우 DLL이 누락되지 않았습니다 . 설치 관리자가 폴더에 액세스 할 수있는 권한이 없습니다 . 설치 관리자를 관리자로 실행하려고 시도하지 않았습니다. 이미 관리자 계정을 사용하고 있고 UAC가 권한 상승을 처리 할 것으로 예상했을 때이 방법이 의미가 없었습니다. 어쨌든 Windows의 많은 것들과 마찬가지로이 모든 것은 나에게 약간의 신비입니다.

그럼에도 불구하고,가는 후 Properties > Security상의 C:\Users\x\AppData\Local\Temp폴더와 있음을주는 권한, 설치 이전 지금 일을 실패했던 것을! 만세! 이미 가지고 있고 액세스 했기 때문에 필요한 권한 도 추가 한 것으로 보입니다 .EveryoneFull controlEveryoneReadWriteFull controlExecute

제가 지금 궁금한 점은 이것이 처음에 어떻게 발생했는지와이 디렉토리에 대한 올바른 권한이 무엇인지입니다.


1
이것은 내 문제를 해결합니다! 그러나 '모든 사람'에게 사용자의 임시 폴더에 대한 모든 액세스 권한을 부여하는 것은 보안 문제라고 생각합니다. 나는 방금 나에게 모든 권한을 부여했고 그 일을했다. 기본적으로 디렉토리에는 사용자에 대한 '특별 권한'이 있습니다.
— Kedar

예, 그것은 Everyone:-)에 권한을 부여하는 것보다 더 의미가 있습니다. 어쨌든, 나는이 문제의 근본 원인이 무엇인지 궁금합니다. iTunes 설치 프로그램 (인기있는 설치 프로그램)을 포함한 여러 설치 프로그램에 문제가있었습니다. 그 디렉토리에서 권한이 끊어진 일이 궁금합니다.
— Dmitry Minkovsky

같은 컴퓨터에서 다른 제한된 / 관리자 계정을 확인했는데 모든 권한이 올바르게 설정된 것 같습니다.
— Kedar

이것은 나를 위해 작동하지 않았습니다 (Windows 7, 32 비트). 이 않았다 . 그러나 내 오류는 "이 Windows Installer 패키지에 문제가 있습니다. 설치 과정에서 프로그램 실행이 예상대로 완료되지 않았습니다. 지원 담당자 또는 패키지 공급 업체에 문의하십시오."
— aliteralmind

증상이 비슷했지만 이것은 효과가 없었습니다. 충돌하는 PIP 설치로 밝혀졌습니다. 이 문제가 해결되었습니다 : stackoverflow.com/a/23350061/797945
— Jagu

8

간단한 해결 방법은 명령 셸을 관리자로 실행하고 (cmd.exe를 검색 한 다음 마우스 오른쪽 단추를 클릭하고 관리자로 실행) MSI 패키지의 위치로 이동하여 실행 msiexec /i packagename.msi합니다. 그것은 나를 위해 일했다.


1
해결 방법이 아니며 (모든 소프트웨어를 올바르게 설치하지는 않음) 작동하지 않습니다 (특정 문제의 경우)
— Kedar

하나의 작은 실수 : 여기에 올바른 명령이 있습니다msiexec /i packagename.msi

이 솔루션은 완벽하게 작동하며 설치 프로그램의 모든 사용자에게 Temp 폴더의 전체 권한을 부여하는 것보다 낫습니다. (올바른 구문에 대해서는 두 번째 주석을 읽으십시오.)
— Gaurav Kumar

+1이 솔루션은 위에서 선택한 답변에도 포함되어야합니다. 선택한 답변은 모두의 최후의 수단이되어야합니다.
— tom_mai78101

1

시스템에 필요한 DLL이 없어야합니다.

두 경우 모두 Windows Installer는 DLL에있는 사용자 지정 작업을 실행하려고했습니다. 이러한 .tmp 파일은 : C:\Users\x\AppData\Local\Temp\MSI570C.tmp와 C:\Users\x\AppData\Local\Temp\MSIA32E.tmp정말 MSI에서 추출 된 DLL 파일입니다.

그러나 어떤 이유로 DLL을로드하지 못했습니다.

가장 중요한 것은 누락 된 DLL을 찾는 것입니다. 오류 메시지가 화면에 표시되는 동안 임시 디렉토리로 이동하여 임시 DLL 파일이 여전히 존재하는지 확인하십시오. 있는 경우 DLL 확장명으로 복사하십시오. 그런 다음 필요한 DLL 중 누락 된 DLL을 찾으려면 depends.exeVisual Studio에서 유틸리티를 사용할 수 있습니다 .

임시 파일이 이미 제거 된 경우 DLL을 가져 오는 유일한 방법은 패키지를 Binary테이블 에서 추출하는 것입니다 .

가능한 두 가지 후보가 있습니다. Visual C ++ 런타임이 없거나 .Net 런타임이 없습니다. 그러나 그것은 단지 추측 일뿐입니다…


temp 디렉토리에만 오류 로그가 생성되는 것을 볼 수 있습니다. 다른 건 없어 그러나 설치 프로그램에서 파일을 추출하는 과정에서 msiexec 명령을 사용하여 Python을 추출하면 모든 파일이 정상적으로 설치되는 것처럼 사용할 수 있습니다. 설치된 소프트웨어 목록에 항목이 표시되지 않습니다. 경로에 파이썬을 추가하면 예상대로 작동합니다.
— Kedar

1
나는 그것이 너무 빨리 알아 차릴 수 있다고 생각합니다. 예, Windows Installer 패키지에서 파일을 추출 할 수 있지만 제품이 설치되어 있지 않기 때문에 (MSSI 관점에서) 프로그램 등록을 수행하지 않습니다. 이 tmp DLL 파일은 설치 이미지의 일부가 아니며 설치 중에 실행되는 도우미입니다. 이를 얻기 위해 Orca 도구를 사용하거나 WiX로 msi를 디 컴파일 할 수 있습니다. 그러나 이미 Python을 가지고 있습니다.
— Alexey Ivanov

소프트웨어를 등록하지 않아도 살 수 있다고 생각합니다. 전체 명령 : msiexec / a python.msi / qb TARGETDIR = "C : \ install_path"
— Kedar


@ 101 만약 그렇다면, 인스톨러가 망가 졌다면, 버그가 있다는 것을 의미합니다 : 인스톨러는 MSVC 런타임을 포함한 추가 소프트웨어에 의존하지 않아야합니다-그것은 독립적이어야합니다. MSVC 2008 또는 2010이 필요한 경우 이러한 패키지는 제품과 함께 설치해야합니다 (설치 프로그램 자체에 포함되어 있음).
— Alexey Ivanov


-1

이 솔루션들 중 어느 것도 나에게 도움이되지는 않았지만 다운로드 폴더로 직접 이동했을 때 수행하려는 설치 아이콘을 마우스 오른쪽 버튼으로 클릭하고 더 이상 오류 메시지없이 설치 된 "관리자 권한으로 실행"을 클릭했습니다.


MSI 설치 관리자에는 해당 옵션이 없습니다.
— Kedar
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.