2010-07-16 11 views
1

설치시 App.Config 파일의 일부를 암호화하기 위해 사용자 지정 작업을 실험했습니다 (how-do-i-encrypt-app-config-file-sections-during-install-with-wix). 기본 CA 프로세스가 작동하지만 Wix/msi 설치에 대한 이해가 부족합니다. CA에 대한Wix 사용자 지정 작업을 다시 사용하는 방법?

내 윅스 구성

<Binary Id="ENCRYPTSECTIONCADLL" 
      SourceFile="(path to CA DLL)"/> 

<Property Id="APPCONFIGPATH" Value="(Path to Exe file)" /> 
<Property Id="SECTIONTOENCRYPT" Value="(Section of App.Config to Encrypt)" /> 

<CustomAction Id="ENCRYPT_SECTION" 
       BinaryKey="ENCRYPTSECTIONCADLL" 
       DllEntry="EncryptConfig" 
       Execute="immediate" 
       Return="check" 
       HideTarget="no" 
       Impersonate="no" /> 

<InstallExecuteSequence> 
    <Custom Action="ENCRYPT_SECTION" After="InstallFinalize" /> 
</InstallExecuteSequence> 

같은 그리고 CA 내부의 비트가 내 질문에 대한 지금

session["APPCONFIGPATH"] 
session["SECTIONTOENCRYPT"] 

에 명시 적으로 언급되어 보인다. 내가 원하는 것은 내 CA를 두 번 실행하지만 SEC에 입력되는 SECTIONTOENCRYPT 속성에 다른 값을 제공하는 것입니다. 나는 이것이 나의 부분에 불과 공상 알고

<InstallExecuteSequence> 
    <Custom Action="ENCRYPT_SECTION" 
      After="InstallFinalize" 
      APPCONFIGPATH = "(Path to Exe File)" 
      SECTIONTOENCRYPT = "(Section #1)" /> 

    <Custom Action="ENCRYPT_SECTION" 
      After="InstallFinalize" 
      APPCONFIGPATH = "(Path to Exe File)" 
      SECTIONTOENCRYPT = "(Section #2)" /> 

</InstallExecuteSequence> 

,하지만 난 윅스의 선언이 표현 주위에 내 머리를 얻이 수없는 것 : 나는 내 자신 윅스 구문을 발명하는 것처럼 나는 나의 욕망을 표현하는 것 체재. 내가 생각해 낼 수있는 유일한 아이디어는 SECTIONTOENCRYPT 문자열을 연결하고 CA 내부에서 구문 분석하는 것입니다. 그게 효과가 있지만, 나에게 맞는 것만은 아닐 것입니다. 비록 내가이 분야에 대한 경험이 없기 때문일 수도 있지만.

누구나 더 나은 방법을 제안 할 수 있습니까?

편집

그냥 내가 암호화하려는 여러 프로그램을 설치 한 윅스 설치 프로그램이있을 때 이것의 주요 사용 사례가의 app.config는 파일이라고 생각 난

답변

관련 문제