2012-03-15 3 views
1

Nant를 사용하여 레지스트리 항목을 설치해야합니다. 그러나 무엇을 시도해도 Nant 은 항목의 32 비트 버전 (예 : Wow6432Node 레지스트리 하위 폴더)을 설치하는 것으로 보입니다.Nant를 사용하여 레지스트리에 항목 설치

<target name="InstallMyKey"> 
    <property name="MyKey.reg" value="${BuildPath}\some\folder\MyKey.reg" /> 
    <exec program="regedit"> 
     <arg value="/s" /> 
     <arg value="${MyKey.reg}" /> 
    </exec> 
</target> 

I했습니다 같은 regedt32를 및 등록 번호로 대체 명령을 사용하여 시도,와 % WINDIR % \ SysWOW64와의 작업 폴더를 설정하고 거기에서 regedit를 실행 시도 :

여기 내 가장 최근의 시도이다. 이들 중 어느 것도 작동하지 않았습니다.

Nant의 최신 빌드를 사용하려고했는데 (어제 시점) 동일한 문제가 있습니다.

아마 Nant가 32 비트 exe이고 따라서 "파일 시스템 리디렉션"때문에 32 비트 버전의 regedit가 시작됩니다.

누구든지 해결 했습니까?

+0

도움이 될까요? http://msdn.microsoft.com/en-us/library/windows/desktop/aa384129%28v=vs.85%29.aspx 32 비트 응용 프로그램이 64 비트 키에 액세스하기 위해 KEY_WOW64_64KEY 플래그를 지정하는 방법을 설명합니다. 그러나 ... 나는이 정보를 내 문제를 해결하는 방법을 모릅니다! – MrBlueSky

답변

0

exec이 수행 할 것이므로 NAnt에서 테스트하기 전에 명령 프롬프트에서 테스트 해보십시오. 이것은 NAnt 문제를 배제하고 구문을 먼저 확인합니다. 폴더 리디렉션이 발생할 수 있으므로 % WINDIR % \ regedit.exe (SysWOW64는 32 비트 버전 포함)의 명시 적 경로를 시도하십시오.

+0

이 문제가 발생한 환경에 더 이상 액세스 할 수 없습니다. 그러나 이것은 누군가가 제안한 유일한 대답이기 때문에 받아 들일 것입니다 :-) – MrBlueSky

관련 문제