2014-04-07 2 views
1

내 응용 프로그램 용 Windows 설치 프로그램에 문제가 있습니다. 설치 프로그램은 2010 년 VS 설치 프로그램 설치 프로젝트로 작성되었습니다. setup.exe를 사용하여 실행하면 모든 것이 실행되고 잘 설치됩니다. .msi를 두 번 클릭하여 설치하거나 마우스 오른쪽 단추로 클릭하면>가 admin으로 실행됩니다. "32 비트 프로세스는 64 비트 프로세스의 모듈에 액세스 할 수 없습니다."라는 오류 메시지가 표시됩니다.Windows Installer 문제

기본 설치 프로그램이 Windows 응용 프로그램 인 기본 응용 프로그램을 관리하기위한 콘솔 응용 프로그램을 설치하는 보조 설치 관리자를 시작하기 위해 사용자 지정 작업을 실행하려고 할 때 발생합니다.

msi 로그의 해당 부분이 여기에 있다고 생각합니다. setup.exe에서만 작동하는 이유는 무엇입니까? :

Action 14:11:15: CreateShortcuts. Creating shortcuts 
MSI (s) (50:28) [14:11:15:125]: Executing op: IconCreate(Icon=_853F67D554F05449430E7E.exe,Data=BinaryData) 
CreateShortcuts: Shortcut: _853F67D554F05449430E7E.exe 
MSI (s) (50:28) [14:11:15:127]: Executing op: IconCreate(Icon=_00A3DC312983E2DC9634D3.exe,Data=BinaryData) 
CreateShortcuts: Shortcut: _00A3DC312983E2DC9634D3.exe 
MSI (s) (50:28) [14:11:15:139]: Executing op: SetTargetFolder(Folder=23\DVS\) 
MSI (s) (50:28) [14:11:15:140]: SHELL32::SHGetFolderPath returned: C:\ProgramData\Microsoft\Windows\Start Menu\Programs 
MSI (s) (50:28) [14:11:15:141]: Executing op: ShortcutCreate(Name=ELECTI~1|Election File Manager Console,Feature=DefaultFeature,Component={C67DDC11-E115-04F1-EB37-4CEB5F7673C5}[~]2,,,WorkingDir=C:\Program Files (x86)\Dominion Voting Systems\Election File Manager\,Icon=_00A3DC312983E2DC9634D3.exe,IconIndex=0,,ShowCmd=1,Description=Manages configuration for the Election File Manager.,,,,) 
CreateShortcuts: Shortcut: ELECTI~1|Election File Manager Console 
MSI (s) (50:28) [14:11:15:146]: Executing op: SetTargetFolder(Folder=23\DVS\) 
MSI (s) (50:28) [14:11:15:147]: SHELL32::SHGetFolderPath returned: C:\ProgramData\Microsoft\Windows\Start Menu\Programs 
MSI (s) (50:28) [14:11:15:147]: Executing op: ActionStart(Name=_8C068C04_0632_43F6_9A23_7215DFF38AB8.commit,,) 
Action 14:11:15: _8C068C04_0632_43F6_9A23_7215DFF38AB8.commit. 
MSI (s) (50:28) [14:11:15:148]: Executing op: CustomActionSchedule(Action=_8C068C04_0632_43F6_9A23_7215DFF38AB8.commit,ActionType=3585,Source=BinaryData,Target=ManagedInstall,CustomActionData=/installtype=notransaction /action=commit /LogFile= /TargetDir="C:\Program Files (x86)\Dominion Voting Systems\Election File Manager\ " "C:\Program Files (x86)\Dominion Voting Systems\Election File Manager\DVS.Adjudication.Services.ElectionFileManager.exe" "C:\Users\Admin\AppData\Local\Temp\CFGF135.tmp") 
MSI (s) (50:28) [14:11:15:148]: Executing op: ActionStart(Name=_4D62EF4D_0692_4108_9E9F_FB7D6DEB597D.commit,,) 
Action 14:11:15: _4D62EF4D_0692_4108_9E9F_FB7D6DEB597D.commit. 
MSI (s) (50:28) [14:11:15:149]: Executing op: CustomActionSchedule(Action=_4D62EF4D_0692_4108_9E9F_FB7D6DEB597D.commit,ActionType=3585,Source=BinaryData,Target=ManagedInstall,CustomActionData=/installtype=notransaction /action=commit /LogFile= "C:\Program Files (x86)\Dominion Voting Systems\Election File Manager\DVS.Adjudication.Services.ElectionFileManager.ServiceManager.dll" "C:\Users\Admin\AppData\Local\Temp\CFGF135.tmp") 
MSI (s) (50:28) [14:11:15:149]: Executing op: ActionStart(Name=_E1493850_50FB_415B_9B41_D70C965F5F01.rollback,,) 
Action 14:11:15: _E1493850_50FB_415B_9B41_D70C965F5F01.rollback. 
MSI (s) (50:28) [14:11:15:149]: Executing op: CustomActionSchedule(Action=_E1493850_50FB_415B_9B41_D70C965F5F01.rollback,ActionType=3329,Source=BinaryData,Target=ManagedInstall,CustomActionData=/installtype=notransaction /action=rollback /LogFile= "C:\Program Files (x86)\Dominion Voting Systems\Election File Manager\DVS.Adjudication.Services.ElectionFileManager.ServiceManager.dll" "C:\Users\Admin\AppData\Local\Temp\CFGF135.tmp") 
MSI (s) (50:28) [14:11:15:149]: Executing op: ActionStart(Name=_2F4DD30B_44C5_4DA1_8B54_9AB7A78142AB.rollback,,) 
Action 14:11:15: _2F4DD30B_44C5_4DA1_8B54_9AB7A78142AB.rollback. 
MSI (s) (50:28) [14:11:15:150]: Executing op: CustomActionSchedule(Action=_2F4DD30B_44C5_4DA1_8B54_9AB7A78142AB.rollback,ActionType=3329,Source=BinaryData,Target=ManagedInstall,CustomActionData=/installtype=notransaction /action=rollback /LogFile= /TargetDir="C:\Program Files (x86)\Dominion Voting Systems\Election File Manager\ " "C:\Program Files (x86)\Dominion Voting Systems\Election File Manager\DVS.Adjudication.Services.ElectionFileManager.exe" "C:\Users\Admin\AppData\Local\Temp\CFGF135.tmp") 
MSI (s) (50:28) [14:11:15:150]: Executing op: ActionStart(Name=_62AA792B_00B2_4C1E_96E0_04E58249B509.install,,) 
Action 14:11:15: _62AA792B_00B2_4C1E_96E0_04E58249B509.install. 
MSI (s) (50:28) [14:11:15:151]: Executing op: CustomActionSchedule(Action=_62AA792B_00B2_4C1E_96E0_04E58249B509.install,ActionType=3073,Source=BinaryData,Target=ManagedInstall,CustomActionData=/installtype=notransaction /action=install /LogFile= /TargetDir="C:\Program Files (x86)\Dominion Voting Systems\Election File Manager\ " "C:\Program Files (x86)\Dominion Voting Systems\Election File Manager\DVS.Adjudication.Services.ElectionFileManager.exe" "C:\Users\Admin\AppData\Local\Temp\CFGF135.tmp") 
MSI (s) (50:04) [14:11:15:153]: Invoking remote custom action. DLL: C:\Windows\Installer\MSIF339.tmp, Entrypoint: ManagedInstall 
MSI (s) (50:14) [14:11:15:153]: Generating random cookie. 
MSI (s) (50:14) [14:11:15:154]: Created Custom Action Server with PID 992 (0x3E0). 
MSI (s) (50:B8) [14:11:15:183]: Running as a service. 
MSI (s) (50:B8) [14:11:15:185]: Hello, I'm your 32bit Elevated custom action server. 
DEBUG: Error 2835: The control ErrorIcon was not found on dialog ErrorDialog 
The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2835. The arguments are: ErrorIcon, ErrorDialog, 
Error 1001. Error 1001. An exception occurred in the OnBeforeInstall event handler of DVS.Adjudication.Services.ElectionFileManager.Installation.MainInstaller. --> A 32 bit processes cannot access modules of a 64 bit process. 
MSI (s) (50!DC) [14:11:19:482]: 
MSI (s) (50:04) [14:11:19:485]: Leaked MSIHANDLE (50) of type 790531 for thread 2268 
MSI (s) (50:04) [14:11:19:485]: Note: 1: 2769 2: _62AA792B_00B2_4C1E_96E0_04E58249B509.install 3: 1 
DEBUG: Error 2769: Custom Action _62AA792B_00B2_4C1E_96E0_04E58249B509.install did not close 1 MSIHANDLEs. 
The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2769. The arguments are: _62AA792B_00B2_4C1E_96E0_04E58249B509.install, 1, 
CustomAction _62AA792B_00B2_4C1E_96E0_04E58249B509.install returned actual error code 1603 (note this may not be 100% accurate if translation happened inside sandbox) 
Action ended 14:11:19: InstallExecute. Return value 3. 
MSI (s) (50:28) [14:11:19:493]: User policy value 'DisableRollback' is 0 
MSI (s) (50:28) [14:11:19:493]: Machine policy value 'DisableRollback' is 0 
MSI (s) (50:28) [14:11:19:498]: Executing op: Header(Signature=1397708873,Version=500,Timestamp=1149727080,LangId=1033,Platform=0,ScriptType=2,ScriptMajorVersion=21,ScriptMinorVersion=4,ScriptAttributes=1) 
MSI (s) (50:28) [14:11:19:498]: Executing op: DialogInfo(Type=0,Argument=1033) 
MSI (s) (50:28) [14:11:19:499]: Executing op: DialogInfo(Type=1,Argument=Election File Manager) 
MSI (s) (50:28) [14:11:19:500]: Executing op: RollbackInfo(,RollbackAction=Rollback,RollbackDescription=Rolling back action:,RollbackTemplate=[1],CleanupAction=RollbackCleanup,CleanupDescription=Removing backup files,CleanupTemplate=File: [1]) 
Action 14:11:19: Rollback. Rolling back action: 
+0

64 비트 대신 32 비트 창에서 프로그램을 실행하면 어떻게됩니까? – KarlosFontana

답변

0

관리 코드 사용자 지정 작업이 실패한 것으로 보입니다. 비트 니스가 일치하지 않기 때문에 관리되는 코드가 어떻게 든 64 비트 코드를 호출하는 호출 체인에 들어갑니다. 관리되는 코드는 AnyCpu (또는 64 비트) 일 수 있으며이를 호출하는 숨겨진 Microsoft Dll은 32 비트이고 코드를로드하지 못합니다. 또는 그것은 32 비트이고 어떤 식 으로든 64 비트 Dll/어셈블리를 호출하려고 시도하는 코드에 전달됩니다. 확실한 크로스 아키텍처를 언급 할 위험이 있으므로 Dll 호출은 허용되지 않습니다.

어쨌든 Setup.exe를 빌드하여 필수 구성 요소를 설치 한 경우에는 관련이 없을 수 있습니다. 이는 setup.exe가 설치되어있는 전제 조건이 필요하기 때문에 MSI를 단독으로 실행할 수 없음을 의미합니다.

0

VS 설치 프로그램에서 비슷한 문제가있는 사람들에게이 조언을 반복해서 계속 반복합니다. 이 프로젝트 유형은 이미 Microsoft에서 사용하지 않으므로 가능한 한 빨리 Wix로 마이그레이션해야합니다. 설치를 제공하는 것은 신뢰할만한 방법이 아닙니다. 나는 이것이 의견의 문제라는 것을 알지만 현장 지식이있는 사람은 거의 없다. 사람들이 VS 설치 프로그램을 사용하여보고하는 문제의 양으로 인해 Wix 로의 마이그레이션은 그만한 가치가 있습니다.

빠르게 윅스 시작하는 방법에 대한 도움말과 게시물에 추가 링크, 여기에 내 대답을 참조하십시오 https://stackoverflow.com/a/22907659/129130 나는 당신의 경우에 어떻게 할 것인지

가 포함 된 모든 설정을 제거하고 그들을 통해 실행하는 것입니다 공통 부트 스트 래퍼 응용 프로그램. Wix에는 Burn이라는 자체 버전이 있습니다.

+0

이것은 레거시 응용 프로그램입니다. 모든 사람들이 Wix 사용을 향해 나아가 야하고, 우리 회사처럼 우리는 기존 소프트웨어를 계속 지원할 필요가 있다고 합의했습니다. –

+0

dark.exe를 사용하면 기존 MSI를 WIX 코드로 디 컴파일 할 수 있습니다. 그러면 기본적으로 코드를 정리하고 향상시킬 수 있습니다. –

+0

@ SteinÅsmul 당신은 대답이 없으며 당신의 충고는 대답이 아니라고 생각합니다. – kroky